WCF实现REST服务
REST 表述性状态转移(Representational State Transfer,REST),不是一种标准,而是一种软件架构风格。 基于REST的服务与基于SOAP的服务相比,性能、效率和易用性上都更高,而SOAP协议非常的复杂和不透明。REST受到越来越多的Web服务供应商欢迎。 REST的主要原则是: 1.网络上的所有事物都可被抽象为资源; 2.每个资源都有一个唯一的资源标识符URI; 3.使用标准方法操作资源; 4.所有的操作都是无状态的; 5.通过缓存来提高性能。 REST是基于Http协议的,任何对资源的操作行为都是通过Http协议来实现。Http把对一个资源的操作限制在4个方法以内:GET、POST、PUT和DELETE,这正是对资源CRUD操作的实现。 REST的资源表述形式可以是XML、HTML、JSON,或者其他任意的形式,这取决于服务提供商和消费服务的用户。 但是REST 不是万能的。操作无状态也会带来巨大的安全问题,如何授权和验证用户?如果要求每次请求都包含完整的身份和验证信息,又如何避免信息泄漏?复杂的功能挑战架构的易用性,这就需要在性能与功能间权衡,究竟该用 REST还是SOAP。 WebHttpBinding WebHttpBinding允许开发人员通过 HTTP请求(这些请求使用“Plain old XML”(POX) 样式消息,而不是使用基于