《RESTful.NET》是及时本为欲使用的微软工具建立RESTful Web服务的Windows开发人员而准备的书。本书作者Jon Flanders是WCF(Windows Communication Foundation)专家。这本简单实用的教程示范了如何使用WCF和.NET 3.5 Framework的其他组成部分,来建立、部署并使用多种应用场景中基于REST的Web服务。
RESTful体系结构提供了比SOAP、SOA或繁琐的WS-堆栈更为简单的方式以建立Web服务。WCF已经被证实为无须依托WS-标准即可建立分布式处理系统的灵活技术。《RESTful.NET》为消耗机器和人力建立Web服务提供了一个WCF REST编程模型的指导。你将学习到如何:
·编写Read-Only(GET)服务
·编写READ/WRITE服务
·主机REST服务
·编写REST feeds
·编写AJAX REST客户端
·安全REST终端
·使用工作流传递REST服务
·利用WCF消耗RESTful XML服务
·结合HTTP运作
·结合ADO.NET数据服务(之前称为Astoria)运作
《RESTful.NET》是一本非常棒的介绍REST和RESTful结构的书籍。如果你使用.NET开发,那么是时候转向RESTful了——这本书将会讲解方法。
Foreword
Preface
1. REST Basics
Architecture of the World Wide Web
SOAP
REST
Resources and URIs
Uniform Interface
Resource Representations
Implementing a Simple RESTful Service Example
Resources
URIs and Uniform Interface
Representations
Interaction
Wrap-Up
Processes
Summary
2. WCF RESTfut Pr0gmmming Model
Isn't WCF All About SOAP?
Channels and Dispatching
HTTP Programming with WCF 3.0
Web Programming in WCF 3.5
WebHttpBinding
WebHttpBehavior
WebServiceHost
WebOperationContext
WebGetAttribute
UriTemplate
UriTemplate Literal Values
UriTemplate Special Values
UriTemplate QueryString
Summary
3.Programming Read-0nly Services
Using WebGetAttribute and UriTemplate
Data Formats
Message
DataContract
XmlSerializer
Hybrid Approach
Summary
4.Programming Read/Write Services
POST, PUT, and DELETE
Using WeblnvokeAttribute
Resources
URIs and Uniform Interface
Representations
Implementation
Summary
5.Hosting WCF RESTful Services
WCF REST Hosting Isn't a Special Case
Self-Hosting
Configuring, Opening, and Closing a ServiceHost
Base Addresses
ServiceHost Versus WebServiceHost
Custom ServiceHost
Hosting in IIS
ASP.NET Compatibility
Multiple Hostnames
Removing the .svc File Extension
Custom ServiceHostFactory
Hosting Wrap-Up
Summarv
6.Programming Feeds
Building a Feed with WCF
Syndicationltem
Formatters
Exposing a Feed on a Live URI
Feed Validation
rable of Contents
Adding Links to a Feed
Summary
7. Programming Ajax and Silverlight Clients
WCF Web Services and Ajax
JSON
JSON-Enabling a Service Endpoint
ASP.NET Ajax
Silverlight 1.0
Silverlight 2.0
Parsing XML in Silverlight 2.0
Parsing JSON in Silverlight 2.0
Consuming Feeds in Silverlight 2.0
Cross-Domain Security in Silverlight 2.0
Returning JSON and XML Conditionally with a Single Method
Summary
8. Securing REST Endpoints
Authenticating: Self-Hosted Endpoints
Setting Endpoint Security: WebHttpBinding.Security's Mode Property
Setting Authentication Requirements: WebHttpBinding's Transport Property
Authenticating: Managed Hosting Endpoints
Authorizing Endpoints
Authorization with Impersonation
Role-Based Authorization
Summary
9. Using Workflow to Deliver REST Services
Consuming REST Services from WF
The SendActivity Instance
The ReceiveActivity Instance
Stateless Workflow Services
Stateful Workflow Services
Summary
10. Consuming RESTful XML Services Using WCF
Defining the Client.
Generating the Contract
Creating the Resource Representations
Creating the ServiceContract
Using the Service
Client Extensibility
11. Working with HTTP
Programming HTTP with WCF
IncomingWebqequestContext
OutgoingWebResponseContext
OutgoingWebRequestContext
IncomingWebResponseContext
Context Wrap-Up
Status Codes
201--Created
404--Not Found
Conditional GET
LastModified
ETags
Caching
Output Caching
HttpContext.Cache
Content-Type
Summary
A. WCF 3.5 SP1
B. ADO.NET Data Services
C. ADO.NET Entity Framework Walkthrough
Index