如何从Azure Functions项目中调用SOAP服务?

3
我使用 C# 创建了一个新的 Azure Functions 项目。我没有看到任何添加“连接服务”的选项,因此我无法为我想调用的 SOAP API 生成代理。如何在 Azure Functions 中完成这个操作?

这是一个WCF服务吗? - Sajeetharan
@Sajeetharan 这是 JAX-WS,参见 https://api.bullhornstaffing.com/webservices-2.6/?wsdl - Leon Cullens
2个回答

8
可以创建一个“类库”项目并将代理添加到其中(在“解决方案资源管理器”中展开项目 > 右键单击“依赖项” > 添加连接服务)。然后,将类库引用添加到Azure功能中。另外,也可以直接将其添加到Azure功能项目中。
上述说明和以下截图基于Visual Studio 2017(版本15.7.2)企业版。

enter image description here


1
请确保如果您有一个使用类函数,它在 V2 函数的 dotnet 标准中执行,如果您正在使用函数的版本 2。 - Dan Parker

1
您可以使用HttpClient。以下是调用函数的示例:
static HttpClient client = new HttpClient();
public static async Task<HttpResponseMessage> Run(HttpRequestMessage req)
{
    var url = "https://<functionapp>.azurewebsites.net/api/Function2?code=<code>";
    var response = await client.GetAsync('https://api.bullhornstaffing.com/webservices-2.6/');
    string result = await response.Content.ReadAsStringAsync();
    return req.CreateResponse(HttpStatusCode.OK, "Function 1 " + result);
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接