Как подключить Azure к Google Cloud - PullRequest
0 голосов
/ 14 февраля 2019

Я работаю над финальным проектом в своей школе, и мне предстоит открыть много нового.Мы создадим API, который будет использовать Google Cloud API и развертывание в Azure.

Я нигде не нашел, просто гуглю это, похоже, что все просто используют тот или иной сервис, но не вместе.

У меня есть базовая программа .net Core API с начальным контроллером ValuesController.Получив ServiceKey от Google Cloud, я использовал один из их основного учебного кода для вызова API Vision с изображением.Моя проблема в том, что все работает на локальном хосте, но после развертывания сайта в Azure и вызова этого контроллера в браузере сайт Azure всегда выдает мне 500 внутренних ошибок сервера:

Не удалось загрузить ресурс: сервер ответилсо статусом 500 (Внутренняя ошибка сервера).

Я попытался настроить отладку для Azure, но безуспешно.

 `[Route("api/sleepy")]
[ApiController]
public class ValuesController : ControllerBase
{
   // GET api/values
   [HttpGet]
   public ActionResult<IEnumerable<string>> Get()
   {
       List<String> da = new List<String>();
       var client = ImageAnnotatorClient.Create();
       var image = Image.FromFile("shit.png");
       var response = client.DetectLabels(image);
       foreach (var annotation in response)
       {
           if (annotation.Description != null)
           {
               Console.WriteLine(annotation.Description);
               da.Add(annotation.Description);
            }
        }

        foreach (var stuff in da)
        {
            Console.WriteLine(stuff);
        }

        System.Threading.Thread.Sleep(5000);


        return Ok(da);
    } `

Когда я просто возвращаю строку или что-то ещекроме того, из моего GET в ValueController, который работает на сайте Azure, я не понимаю этой моей проблемы, localhost получает нужную информацию, но чего-то не хватает, так как он не работает на развернутом сайте Azure.

Сайт, с которым я пытался это сделать: https://webapplication220190211113216.azurewebsites.net/api/sleepy. Это временно, чтобы проверить этоImage shit.png - это изображение собаки, расположенное в корне проекта.

Что мне здесь не хватает?Я был бы очень признателен, если бы кто-то мог по крайней мере направить меня в правильном направлении, я не нашел ответов на Google.:)

РЕДАКТИРОВАТЬ: мне удалось найти обходной путь с помощью регулярных запросов Http, было бы все еще интересно узнать причины, по которым использование клиентских библиотек приводит к ошибке 500 в Azure.:)

...