我有一個使用[WebMethods]和[SoapHeader(「Auth」)]的asmx文件的項目。我沒有使用SOAP的經驗,也不明白它是如何工作的。SOAP標頭如何在ASMX Web服務中工作?
通過代碼我發現你可以使用一個名稱與頭相同的變量,它包含數據。數據如何發送到標題?它從何而來?
我有一個使用[WebMethods]和[SoapHeader(「Auth」)]的asmx文件的項目。我沒有使用SOAP的經驗,也不明白它是如何工作的。SOAP標頭如何在ASMX Web服務中工作?
通過代碼我發現你可以使用一個名稱與頭相同的變量,它包含數據。數據如何發送到標題?它從何而來?
數據來自SOAP信封的<soap:Header>
部分中的XML。
通過使用從SoapHeader派生的類來在頭中發送數據。該類將在您的webservice類中聲明爲屬性。然後在您的Web方法中,您將在處理實際方法之前檢查此屬性中的身份驗證信息。
一個簡單的實現可以在這裏http://www.codeproject.com/KB/cpp/authforwebservices.aspx
下面的MSDN鏈接講述了另一個類似的技術,這將是更加複雜的一個http://msdn.microsoft.com/en-us/library/9z52by6a.aspx發現。
在頭部傳遞數據的基本思想保持不變。
因此,有些事情正在發送SOAP請求,並且該屬性抓取標題?那是對的嗎? – chobo 2011-05-04 17:15:27
或多或少。可能有多個標題。只有匹配的標題將被抓取。 – 2011-05-04 18:25:12