《RESTful.NET》是及時(shí)本為欲使用的微軟工具建立RESTful Web服務(wù)的Windows開發(fā)人員而準(zhǔn)備的書。本書作者Jon Flanders是WCF(Windows Communication Foundation)專家。這本簡單實(shí)用的教程示范了如何使用WCF和.NET 3.5 Framework的其他組成部分,來建立、部署并使用多種應(yīng)用場景中基于REST的Web服務(wù)。
RESTful體系結(jié)構(gòu)提供了比SOAP、SOA或繁瑣的WS-堆棧更為簡單的方式以建立Web服務(wù)。WCF已經(jīng)被證實(shí)為無須依托WS-標(biāo)準(zhǔn)即可建立分布式處理系統(tǒng)的靈活技術(shù)。《RESTful.NET》為消耗機(jī)器和人力建立Web服務(wù)提供了一個(gè)WCF REST編程模型的指導(dǎo)。你將學(xué)習(xí)到如何:
·編寫Read-Only(GET)服務(wù)
·編寫READ/WRITE服務(wù)
·主機(jī)REST服務(wù)
·編寫REST feeds
·編寫AJAX REST客戶端
·安全REST終端
·使用工作流傳遞REST服務(wù)
·利用WCF消耗RESTful XML服務(wù)
·結(jié)合HTTP運(yùn)作
·結(jié)合ADO.NET數(shù)據(jù)服務(wù)(之前稱為Astoria)運(yùn)作
《RESTful.NET》是一本非常棒的介紹REST和RESTful結(jié)構(gòu)的書籍。如果你使用.NET開發(fā),那么是時(shí)候轉(zhuǎn)向RESTful了——這本書將會(huì)講解方法。
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