Azure App Service WebJob httpclient getasync请求返回500内部服务器错误

时间:2016-09-15 16:56:01

标签: azure-webjobs

我有一个由排队存储触发的webjob,并在收到新消息时进行web api调用。我在fiddler中测试了get请求并且它可以工作,但是当通过webjob中的httpclient getasync发出请求时,会出现500内部服务器错误。可以在webjob中调用web api吗?

1 个答案:

答案 0 :(得分:0)

  

我在fiddler中测试了get请求并且它可以工作,但是当通过webjob中的httpclient getasync发出请求时,会出现500内部服务器错误。

据我所知,您的Web API服务器端会抛出500内部服务器错误。请尝试在Web API应用程序中使用try-catch包装代码,并找到详细错误。

  

可以在webjob中调用web api吗?

您可以在WebJob中发送http请求。这是我的代码示例,它可以在我和我的身边很好地工作,你可以参考它。

<强> Functions.cs

// This function will get triggered/executed when a new message is written 
// on an Azure Queue called queue.
public static async void ProcessQueueMessage([QueueTrigger("queue")] string message, TextWriter log)
{
    log.WriteLine(message);
    string requestUrl = "https://bruce-chen-001.azurewebsites.net/api/values";
    HttpClient client = new HttpClient();
    var response = await client.GetAsync(requestUrl);
    log.WriteLine("response:{0}", await response.Content.ReadAsStringAsync());
}

<强>结果

response:["value1","value2"]