添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
" Services.ShowerService " > /* 提供Web HTTP服务用 */ <endpoint binding= " webHttpBinding " behaviorConfiguration= " WebBehavior " contract= " Services.IShowerService " /> </service> </services> <behaviors> <!--WCF中提供了Web HTTP的方式--> <endpointBehaviors> <behavior name= " WebBehavior " > <webHttp /> </behavior> </endpointBehaviors> <!--WCF中提供了Web HTTP的方式--> <serviceBehaviors> <behavior name= "" > <serviceMetadata httpGetEnabled= " true " httpsGetEnabled= " true " /> <serviceDebug includeExceptionDetailInFaults= " false " /> </behavior> </serviceBehaviors> </behaviors> </system.serviceModel>

WCF接口的设置,这里加入了对URI模板(UriTemplate)和JSON(WebMessageFormat.Json)的支持:

namespace Services
    [ServiceContract]
    public interface ShowerService
        [OperationContract]
        [WebGet(UriTemplate="/Hello/{name}", RequestFormat=WebMessageFormat.Json, ResponseFormat=WebMessageFormat.Json)]
        string Hello(string name);

 测试:打开IE浏览器,在地址栏输入:http://localhost:3000/Services/ShowerService.svc/hello/abc,将会看到访问后的结果。  

 调试:将Web.config中的 <webHttp /> 修改为 <webHttp helpEnabled="true" />将可以在浏览器页面中列举出可用接口,并提供提交的数  据样例。

 打开IE浏览器,在地址栏输入:http://localhost:3000/Services/ShowerService.svc/help 即可。

 Siverlight 访问:使用SL的WebClient访问WebInvoke方法时,不要忘记将 HttpRequestHeader.ContentType 设置成 application/json,代码如下所示:

 WebClient client = new WebClient();
 client.Headers[HttpRequestHeader.ContentType] = "application/json";