我需要從第三方公司調用Web服務來授權我的訪問。流程以這種方式工作。第三方應用程序調用我的api控制器操作,傳遞一個代表Guid(客戶端ID)的字符串參數(標記)。之後,我需要打電話給他們的其他服務來檢查收到的「令牌」是否仍然有效(授權)。問題是第二次調用要求我將guid作爲字節數組發送。我嘗試了很多,但無法弄清楚如何將Guid在字節數組中轉換爲Get參數。這是我的代碼。這會返回一個錯誤的請求。C#使用HttpRequestMessage將字節數組作爲Get參數傳遞給Web服務
添加字節數組後的URL看起來像這樣: http://third.party/RequestTokenAuthorization?token=System.Byte []
觀測值:我增加了服務作爲一個服務引用我的項目,並使用客戶端生成的方法調用它的工作原理:
byte[] bytes = new Guid(token).ToByteArray();
ServiceReference1.Client client = new ServiceReference1.Client();
var response = client.RequestTokenAuthorization(bytes);
我不知道,但因爲我有一個asp.net網頁API的工作,似乎「錯」給我添加服務引用我的項目。
謝謝!
這聽起來像OAuth,但如果是這樣,爲什麼不說呢?你問的是非常特定的api,所以請澄清你正在使用的是什麼技術。另外,如果它有效,那麼問題是什麼? – theMayer
只有當我在Asp.Net Web API項目中添加外部服務作爲服務引用時才起作用。但我寧願不去,除非沒有其他辦法。 – jpgrassi
那麼,我想你可以剪切和粘貼生成的代碼? – theMayer