Как правильно настроить Swagger для PowerApps? - PullRequest
0 голосов
/ 14 февраля 2020

Это моя Azure функция, которую я хочу подключить к своим PowerApps

        [FunctionName("ConvertMe")]
    public static IActionResult RunAsync
        ([HttpTrigger(AuthorizationLevel.Function, "get", Route = null)] HttpRequest req, ILogger log)
    {
        log.LogInformation($"Received a Request");
        ConvertMe Converter = new ConvertMe();

        string test1 = req.Query["image1"];
        string test2 = req.Query["image2"];


        MagickImage _Main = new MagickImage(Convert.FromBase64String(test1), MagickFormat.Png);
        MagickImage _Overlay = new MagickImage(Convert.FromBase64String(test2), MagickFormat.Png);

        using (MemoryStream memory = new MemoryStream())
        {
            Converter.ComebineBitmap(_Main, _Overlay).Write(memory, MagickFormat.Png);
            memory.Position = 0;
            return new FileContentResult(memory.ToArray(),"image/png");
        }

    }

Она уже работает на локальном компьютере, но я хочу использовать ее в PowerApps. Как мне получить возвращаемое значение в Swagger?

Мой текущий файл чванства

    {
  "swagger": "2.0",
  "info": {
    "version": "1.0.0",
    "title": "MyAzureFunction"
  },
  "host": "xxx",
  "paths": {
    "/api/ConvertMe": {
      "get": {
        "description": "Calls my azure function over https",
        "operationId": "ConvertMe",
        "parameters": [
          {
            "name": "code",
            "in": "query",
            "description": "code",
            "default": "code",
            "type": "string"
          },
          {
            "name": "image1",
            "in": "query",
            "required": true,
            "type": "string"
          },     
          {
            "name": "image2",
            "in": "query",
            "required": true,
            "type": "string"
          },

        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "schema": {
              "title": "The response of the api.",
              "type": "string"
            }
          }
        }
      }
    }
  }
}

Я никогда не работал с чванством, но уже выяснил, что лучше всего работать со строкой base64.

1 Ответ

1 голос
/ 17 февраля 2020

У Microsoft есть учебное пособие для создания определения OpenAPI из API без сервера . Если вы будете следовать изложенным шагам, вы в конечном итоге перейдете к шагу Определение OpenAPI , который вы можете использовать для импорта в powerapps, чтобы создать свой собственный соединитель.

...