2012-05-10 33 views
0

我有一個WCF服務應用程序,其中有一些Rest服務和一些傳統的WCF服務。如何使我的HttpModule僅適用於Rest服務調用

我已經添加了一個HttpModule來攔截Rest服務的服務調用,並驗證請求頭中的令牌並允許訪問該服務。這對我的Rest服務工作正常。

當我做調用WCF服務,它進入的HttpModule,然後我會在客戶端的異常「遠程服務器返回了意外的響應:(400)錯誤的請求。」

如何確保只爲Rest服務調用了我的HttpModule,而不是爲我的WCF Soap服務調用。

回答

1

我想你不能,因爲這兩種方法(REST和SOAP)都使用GET和POST動詞,所以你不能過濾。

嘗試將兩個服務放在不同的路徑中,其中每個路徑都有自己的模塊。

+0

你是什麼意思放在不同的路徑。 – KhanS

+0

@KhanS將相應的[模塊](http://learn.iis.net/page.aspx/121/iis-modules-overview/)分配給它自己的應用程序。因此,您將擁有'http:// yourhost/RESTServices/foo.bar'和'http:// yourhost/SOAPServices/foo.svc',其中第一個由您的REST模塊處理,後者由WCF模塊處理。 – CodeCaster

+0

爲什麼我的調用從HTTPModule返回後沒有到達WCF服務。任何想法 ? – KhanS

相關問題