说明: 大家好,这可能很简单,但是因为这是我第一次与这个困惑的人打交道。
我正在使用的api是符合SOAP 1.2的Web服务,它强制使用HTTP / s形式的传输级安全性。
我完成了什么: 我有一个C#项目,我已经通过添加服务引用添加了wsdl。
使用的api im需要一个api密钥作为标头来对每个请求进行身份验证。 这是方案: https://i.stack.imgur.com/A43F6.png
我先创建一个客户端,然后构造我的标头身份验证,如下所示:
blablabla client = new blablabla();
using (var scope = new OperationContextScope(client.InnerChannel))
{
var headerValue = new MessageHeader<Guid>(apiKey);
var header = headerValue.GetUntypedHeader("api-key", "");
OperationContext.Current.OutgoingMessageHeaders.Add(header);
var test = client.GetCustomers(string ID);
}
我在这里想念的是什么?这是验证/连接并调用api方法获取其内容的正确方法吗?