从Windows应用程序调用Microsoft Azure功能

时间:2017-10-23 14:15:05

标签: c# wpf azure azure-functions

如何从本地计算机上运行的Windows应用程序调用Azure上的Azure函数,而无需在应用程序中嵌入键?

是否有类似于WCF服务的客户端代理生成器,而是Azure功能?或者你只是使用网络客户端?

3 个答案:

答案 0 :(得分:2)

如果您的azure功能应用程序正在使用HttpTrigger,则它与任何非Azure WebAPI应用程序没有什么不同。您可以使用基本的HttpClient或者像RestSharp这样的包装器库通过休息客户端调用它。

您无需处理任何特殊内容,请查找有关如何调用WebAPI应用程序的任何教程以获取更多信息。

答案 1 :(得分:1)

从.NET应用程序调用Azure功能只需向端点发出HTTP请求:https://social.msdn.microsoft.com/Forums/azure/en-US/2c676980-8dd3-4112-ae41-a2c4f4825fe3/how-to-call-a-azure-function-from-aspnet-webhook?forum=AzureFunctions

Azure和客户端应用程序之间的通信使用SSL加密。

就密钥而言,您可以将其硬编码到客户端代码或配置中,也可以从您的某些服务中检索它。

答案 2 :(得分:1)

您可以使用Restsharp访问Azure功能。 您将需要从门户网站获取包含主机密钥的完整网址。 在门户中导航至您的功能。 使用函数的</> Get function URL链接获取完整的URL(位于页面顶部的“运行”按钮旁边)。密钥在“ code =“

之后
var fullUrl = "https://myfunciton1000.azurewebsites.net/api/ResourceGroupNameExists?code=ENp/dFAluLqHM8TDr...Sk5YJ7DSEbs0PHPzTVw==";
var url = "https://myfunciton1000.azurewebsites.net/api";
var securityCode = "ENp/dFAluLqHM8TDr...YJ7DSEbs0PHPzTVw==";

var client = new RestSharp.RestClient(url);
var request = new RestSharp.RestRequest("ResourceGroupNameExists", RestSharp.Method.POST);
request.AddHeader("x-functions-key", securityCode);
request.AddQueryParameter("ResourceGroupName", "ImageStormSource");


var response = client.Execute(request);