我正在使用通过URL的Azure API管理肥皂传递(ENdpoint)它具有用于身份验证的订阅密钥。
但是当我添加wsdl时,Web端点只有基地址而没有标头。在网络服务呼叫后,我得到了错误:
{“ HTTP请求未经客户端身份验证方案'Anonymous'的授权。 从服务器收到的身份验证标头是'Key realm = \“ https:\ url \”,name = \“ Key \”,type = \“ header \”'。“}
我想我缺少传递标题。
如何传递标头以调用Web API端点?我们无法在web.config中提及它。
实际上,您不应使用订阅密钥进行身份验证。
我想APIM默认会转发所有标头。但是,如果没有,您可以尝试如下操作:
<set-header name="Ocp-Apim-Subscription-Key" exists-action="override">
<value>@(context.Request.Headers.GetValueOrDefault("Ocp-Apim-Subscription-Key", ""))</value>
</set-header>
如何通过传递“ oci-apim-subscription-key”和基本身份验证从ASP .Net SOAP实现中调用API服务?