2009-07-29 45 views
0

我新的Web服務。我最後一次處理SOAP的時候是創建了一堆包裝類,它們根據我創建的某些響應對象/類發送請求並收到響應。所以我有一個對象發送某些API請求,同樣也有一組對象將響應保存爲對象,以便我可以利用該第三方API。傳遞驗證與Web服務的API調用參考

這時,有人來找我,說爲什麼不直接使用WSDL和Web服務。好吧,今天我去創建了一個「服務參考」。我看到這就是所謂的「代理類」。你只是實例化一個實例,然後walla你可以訪問wsdl中的所有方法。

但是,這給我留下了身份驗證的問題。回來時,我手動創建我自己的課,我有這暴露,我會設置然後像簽名,用戶名,密碼的事情,得到了與被要求由我使用到任何第三方API HTTP請求一起發送訪問屬性的類進行API調用。

但隨後使用服務引用,我怎麼那麼會將此信息傳遞,就像我在自定義類做了?例如,我將與PayPal API合作。它要求您發送簽名和其他一些信息,如用戶名和密碼。

// Determins if API call needs to use a session based URI 
       string requestURI = UseAuthURI == true ? _requestURIAuthBased + aSessionID : _requestURI; 

       byte[] data = XmlUtil.DocumentToBytes(doc); 

       // Create the atual Request instance 
       HttpWebRequest request = CreateWebRequest(requestURI, data.Length); 

因此,使用Web服務參考每個方法調用時,我如何通過用戶名,密碼,簽名等?它是否像指定方法的參數一樣簡單,還是使用代理類對象的.Credentials和.URL方法?在我看來,憑證是指Windows憑據,但我可能是錯的。是否僅限於此,還是可以使用它來指定PayPal在每個方法調用/ API請求時所需的那些必需的標頭值?

+0

您將切換到WCF,對吧? – 2009-07-30 00:14:02

回答