我有一個服務提供商,他們的Web服務需要非標準的授權類型。WebService非標準授權類型
而不是Basic,Digest,NTLM等,它們需要「基本API訪問」。
我已經嘗試了下面的代碼,並使用Fiddler來檢查Web服務請求。
它似乎沒有任何自定義字符串可以用來
Binding avail = new Binding();
avail.Url = "https://amer.webservicesxx.com/Availability";
NetworkCredential netCredential = new NetworkCredential("abc", "def");
Uri uri = new Uri(avail.Url);
CredentialCache cred = new CredentialCache();
cred.Add(uri, "Basic API Access", netCredential);
avail.Credentials = cred;
SearchRsp response = avail.service(request);
POST https://amer.webservicesxx.com/Availability HTTP/1.1
的User-Agent:Mozilla的/ 4.0(兼容; MSIE 6.0; MS Web服務客戶端 協議4.0.30319.1)
VsDebuggerCausalityData: uIDPo + CJPwpspBxKp939c ...
Content-Type:text/xml;字符集= UTF-8
的SOAPAction: 「」
主機:america.webservicesxx.com
的Content-Length:期望值:?100繼續XML版本= 「1.0」 編碼=「UTF-8 「?>?soap:Envelope xmlns:soap =」http://schemas.xmlsoap.org/soap/envelope/「 xmlns:xsi =」http://www.w3.org/20 01/XMLSchema-instance 「 的xmlns:XSD =」 http://www.w3.org/2001/XMLSchema「> ... /SOAP:信封>
它缺少...
授權:基本API訪問/ dUFQSS04NDA0NTk2MDk6WiFyYzBuZDg0 ...
...在標題行。
如果我只使用"Basic"
,它會正確添加授權行,但會被服務提供商拒絕。
這是將Authorization:
標題添加到Soap事務的正確語法嗎?