RESTful.NET(影印版)
RESTful.NET(影印版)
Jon Flanders
出版时间:2009年05月
页数:287
《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了——这本书将会讲解方法。

“REST是简易的,WCF却不是这样。要切实理解并利用这部分的WCF,需要一个有丰富知识和实战经验的指导者。我想不出比Jon Flanders更适合担任这个角色的人??Jon在解释复杂的概念方面功夫一流。在创建和使用WCF的这些服务上,这本书是我见过的最好的介绍。”
——David Chappell,Chappell & Associates公司
Jon Flanders是Pluralsight公司的技术人员。这是一家专门为使用微软技术的开发者提供培训的公司。Jon专门从事WCF、WF和BizTalk的研究,是Addison-Wesley出版的《ASP Internals》一书的作者,也是《Mastering Visual Studio.NET》(O'Reilly)一书的合著者。

  1. Foreword
  2. Preface
  3. 1. REST Basics
  4. Architecture of the World Wide Web
  5. SOAP
  6. REST
  7. Resources and URIs
  8. Uniform Interface
  9. Resource Representations
  10. Implementing a Simple RESTful Service Example
  11. Resources
  12. URIs and Uniform Interface
  13. Representations
  14. Interaction
  15. Wrap-Up
  16. Processes
  17. Summary
  18. 2. WCF RESTful Programming Model
  19. Isn’t WCF All About SOAP?
  20. Channels and Dispatching
  21. HTTP Programming with WCF 3.0
  22. Web Programming in WCF 3.5
  23. WebHttpBinding
  24. WebHttpBehavior
  25. WebServiceHost
  26. WebOperationContext
  27. WebGetAttribute
  28. UriTemplate
  29. UriTemplate Literal Values
  30. UriTemplate Special Values
  31. UriTemplate QueryString
  32. Summary
  33. 3. Programming Read-Only Services
  34. Using WebGetAttribute and UriTemplate
  35. Data Formats
  36. Message
  37. DataContract
  38. XmlSerializer
  39. Hybrid Approach
  40. Summary
  41. 4. Programming Read/Write Services
  42. POST, PUT, and DELETE
  43. Using WebInvokeAttribute
  44. Resources
  45. URIs and Uniform Interface
  46. Representations
  47. Implementation
  48. Summary
  49. 5. Hosting WCF RESTful Services
  50. WCF REST Hosting Isn’t a Special Case
  51. Self-Hosting
  52. Configuring, Opening, and Closing a ServiceHost
  53. Base Addresses
  54. ServiceHost Versus WebServiceHost
  55. Custom ServiceHost
  56. Hosting in IIS
  57. ASP.NET Compatibility
  58. Multiple Hostnames
  59. Removing the .svc File Extension
  60. Custom ServiceHostFactory
  61. Hosting Wrap-Up
  62. Summary
  63. 6. Programming Feeds
  64. Building a Feed with WCF
  65. SyndicationItem
  66. Formatters
  67. Exposing a Feed on a Live URI
  68. Feed Validation
  69. Adding Links to a Feed
  70. Summary
  71. 7. Programming Ajax and Silverlight Clients
  72. WCF Web Services and Ajax
  73. JSON
  74. JSON-Enabling a Service Endpoint
  75. ASP.NET Ajax
  76. Silverlight 1.0
  77. Silverlight 2.0
  78. Parsing XML in Silverlight 2.0
  79. Parsing JSON in Silverlight 2.0
  80. Consuming Feeds in Silverlight 2.0
  81. Cross-Domain Security in Silverlight 2.0
  82. Returning JSON and XML Conditionally with a Single Method 154
  83. Summary
  84. 8. Securing REST Endpoints
  85. Authenticating: Self-Hosted Endpoints
  86. Setting Endpoint Security: WebHttpBinding.Security’s Mode Property
  87. Setting Authentication Requirements: WebHttpBinding’s Transport
  88. Property
  89. Authenticating: Managed Hosting Endpoints
  90. Authorizing Endpoints
  91. Authorization with Impersonation
  92. Role-Based Authorization
  93. Summary
  94. 9. Using Workflow to Deliver REST Services
  95. Consuming REST Services from WF
  96. The SendActivity Instance
  97. The ReceiveActivity Instance
  98. Stateless Workflow Services
  99. Stateful Workflow Services
  100. Summary
  101. 10. Consuming RESTful XML Services Using WCF
  102. Defining the Client
  103. Generating the Contract
  104. Creating the Resource Representations
  105. Creating the ServiceContract
  106. Using the Service
  107. Client Extensibility
  108. Summary
  109. 11. Working with HTTP
  110. Programming HTTP with WCF
  111. IncomingWebRequestContext
  112. OutgoingWebResponseContext
  113. OutgoingWebRequestContext
  114. IncomingWebResponseContext
  115. Context Wrap-Up
  116. Status Codes
  117. 201 — Created
  118. 404 — Not Found
  119. Conditional GET
  120. LastModified
  121. ETags
  122. Caching
  123. Output Caching
  124. HttpContext.Cache
  125. Content-Type
  126. Summary
  127. A. WCF 3.5 SP1
  128. B. ADO.NET Data Services
  129. C. ADO.NET Entity Framework Walkthrough
  130. Index
书名:RESTful.NET(影印版)
作者:Jon Flanders
国内出版社:东南大学出版社
出版时间:2009年05月
页数:287
书号:978-7-5641-1650-7
原版书出版商:O'Reilly Media
Jon Flanders
 
Although Jon Flanders spent the first few years of his professional life as an attorney,
he quickly found chasing bits more interesting than chasing ambulances. After working
with ASP and COM, he made the move to .NET. Jon is most at home spelunking and
trying to figure out exactly how .NET (specifically, ASP.NET and Visual Studio .NET)
works. Deducing the details and disseminating that information to other developers is
his passion.
 
 
The animal on the cover of RESTful .NET is an electric catfish (Siluriformes malapteruridae).
Located mainly in tropical Africa and the Nile River, the generally nocturnal
catfish can produce an electric shock of up to 350 volts, which it uses to stun or kill its
enemies (the shock is not fatal to humans).
Often seen in large display tanks at aquariums, the electric catfish has thick lips and a
cylinder-shaped, pinkish-brown body with several dark spots. The fish’s electric
organ—used to generate shocks—extends the length of its body, and, when lit, helps
the fish see through its murky surroundings.
In the normal course of its waking hours, the fish acts aggressively against other fish
and even against others of its own kind. Each successive shock its electric organ produces,
however, weakens the fish, which then must rest in order to “recharge” its electricity,
thus rendering it temporarily vulnerable to predators. The fish is also vulnerable
for another reason: its body has no scales or bony plates, making the fish relatively
defenseless against hot aquarium tanks or sharp rocks.