如何将Azure与Google Cloud连接

时间:2019-02-14 19:28:12

标签: c# .net-core google-cloud-platform azure-deployment

我正在学校里做一个最后的项目,发现了很多新东西。我们将制作一个使用Google Cloud API并将其部署到Azure的API。

我只是搜遍了这个地方,似乎每个人都只是使用一项服务或另一项服务,而不是一起使用。

我有一个基本的.net Core API程序,带有初始控制器ValuesController。从Google Cloud获取ServiceKey后,我使用了其中的基本教程代码之一来调用带有图像的Vision API。我的问题是,一切都可以在localhost上运行,但是将站点部署到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);
    } `

当我刚刚从ValueController的GET中返回一个字符串或其他内容(适用于Azure站点)时,我不明白我的这个问题,本地主机获得了正确的信息,但由于它无法在本地运行而丢失了某些信息Azure部署的站点。

我一直尝试使用的网站是: https://webapplication220190211113216.azurewebsites.net/api/sleepy。测试这只是暂时的。图像shit.png是一只狗的照片,位于项目的根部。

我在这里想念什么?如果有人至少可以指导我正确的方向,我将非常感激,因为我在google上找不到任何答案。 :)

编辑: 我设法通过使用常规Http请求找到了一种解决方法,听到使用客户端库导致Azure上出现500错误的原因仍然很有趣。 :)

0 个答案:

没有答案