[英]Rest Wcf service
我試圖從瀏覽器測試我的Rest Wcf服務。 當我試圖從瀏覽器發送一些值時,我收到以下錯誤。 “由於EndpointDispatcher上的AddressFilter不匹配,無法在接收方處理消息。
檢查發件人和收件人的EndpointAddresses是否一致。“
然后我添加了[ServiceBehavior(AddressFilterMode = AddressFilterMode.Any)]。 然后我得到一個不同的錯誤。
“由於EndpointDispatcher上的ContractFilter不匹配。這可能是由於合同不匹配(發送方和接收方之間的操作不匹配)或發送方與接收方之間的綁定/安全性不匹配。
檢查發送方和接收方是否具有相同的合同和相同的綁定(包括安全要求,例如消息,傳輸,無)。“
我們可以從瀏覽器傳遞值到Rest Wcf服務嗎?
我試圖從瀏覽器傳遞以下值。
http://mywebsite/Service1.svc/mymethod/Firstname,Lastname,LosAngles,CA
這是我的web.confg文件
<system.serviceModel>
<services>
<service behaviorConfiguration="Wcfservice1.ServiceBehavior" name="="Wcfservice1.Service1">
<endpoint address="" binding="webHttpBinding" contract="Wcfservice1.IService1">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="Wcfservice1.ServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
看起來您沒有在REST端點上啟用<webHttp/>
行為。 在配置文件的<behaviors/>
元素中添加:
<endpointBehaviors>
<behavior name="REST">
<webHttp />
</behavior>
</endpointBehaviors>
然后,像這樣更改<endpoint/>
元素:
<endpoint address="" binding="webHttpBinding" behaviorConfiguration="REST" contract="Wcfservice1.IService1">
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.