自定義SOAP訊息頭

2021-09-21 22:51:56 字數 1849 閱讀 3411

對於webservice呼叫,為了驗證呼叫者的身份,可以自定義乙個soapheader,讓呼叫者將身份資訊放在裡面,然後在服務端檢查,具體方法如下:

1、先定義乙個soapheader,用它來傳遞身份資訊:

using

system; 

using

system.web.services.protocols; 

namespace

customsoap 

/// 

/// 定義密碼字段

/// 

public

string

pass  

} } 

2、webservice中的服務方法要修改一下:

using

system; 

using

system.web.services; 

using

system.web.services.protocols; 

namespace

customsoap 

/// 

/// 服務方法,用soapheader標記使用哪個頭,此處是上面定義的header屬性

/// 

/// 

[webmethod] 

[soapheader("header"

)] public

string

hello()  } 

} 3、呼叫者要傳遞身份資訊:

public

string

callhello() 

呼叫一下,應該能收到「hello root」,如果使用者名稱或密碼錯誤,會收到「login required」。

此時的soap內容會發生變化,抓一下包或者直接在瀏覽器上訪問service.asmx?op=hello,可以看到請求包:

另外提一下,對於webservice,是明文的soap通訊,安全性上需要各位自己考慮一下方案。

自定義訊息

自定義訊息的響應和資源訊息的響應有很多類似之處 資源訊息的響應是以資源的id號作為標識的 自定義的訊息要自己宣告訊息id。一 定義 第一步要宣告訊息 definewm mymsgwm user 200 第二步要在類宣告中宣告訊息對映 declare message map 第三步要在類宣告中定義訊息...

VC自定義訊息

示例 主對話方塊a edit控制項 副對話方塊b edit控制項 將b中edit內容在其銷毀後,顯示在a中edit中 1 自定義訊息 define wm mymsg wm user 100 2 b cpp afxgetmainwnd sendmessage wm mymsg,wparam 0,lpa...

MFC自定義訊息

訊息機制是windows的典型執行機制,在mfc中有很多的訊息如wm btn 等。但是在有些情況下我們需要自定義一些訊息去做一些我們需要的功能,mfc的嚮導不能幫助我們做到這一點,我們可以通過新增相應的 去完成這個功能。新增自定義訊息操作如下 1.建立mfc工程,如基於對話方塊的應用程式,test。...