ebook img

RESTful .NET: Build and Consume RESTful Web Services with .NET 3.5 PDF

310 Pages·2008·9.54 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview RESTful .NET: Build and Consume RESTful Web Services with .NET 3.5

RESTful .NET ,roadmap.2524 Page ii Monday, November 10, 2008 3:51 PM Other Microsoft .NET resources from O’Reilly Related titles Learning C# 3.0 Programming WCF Services Learning WCF RESTful Web Services Programming C# 3.0 .NET Books dotnet.oreilly.com is a complete catalog of O’Reilly’s books on Resource Center .NET and related technologies, including sample chapters and code examples. ONDotnet.comprovidesindependentcoverageoffundamental, interoperable,andemergingMicrosoft.NETprogrammingand web services technologies. Conferences O’Reillybringsdiverseinnovatorstogethertonurturetheideas thatsparkrevolutionaryindustries.Wespecializeindocument- ing the latest tools and systems, translating the innovator’s knowledge into useful skills for those in the trenches. Visit conferences.oreilly.com for our upcoming events. Safari Bookshelf (safari.oreilly.com) is the premier online refer- ence library for programmers and IT professionals. Conduct searchesacrossmorethan1,000books.Subscriberscanzeroin on answers to time-critical questions in a matter of seconds. Read the books on your Bookshelf from cover to cover or sim- ply flip to the page you need. Try it today for free. RESTful .NET Jon Flanders Beijing • Cambridge • Farnham • Köln • Sebastopol • Taipei • Tokyo RESTful .NET by Jon Flanders Copyright © 2009 Jon Flanders. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://safari.oreilly.com). For more information, contact our corporate/ institutional sales department: (800) 998-9938 or [email protected]. Editor: John Osborn Indexer: Lucie Haskins Production Editor: Sumita Mukherji Cover Designer: Karen Montgomery Copyeditors: Amy Thomson and Audrey Doyle Interior Designer: David Futato Proofreader: Emily Quill Illustrator: Robert Romano Printing History: November 2008: First Edition. Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are registered trademarks of O’Reilly Media, Inc. RESTful .NET, the image of an electric catfish, and related trade dress are trademarks of O’Reilly Media, Inc. .NET is a registered trademark of Microsoft Corporation. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and O’Reilly Media, Inc. was aware of a trademark claim, the designations have been printed in caps or initial caps. While every precaution has been taken in the preparation of this book, the publisher and author assume no responsibility for errors or omissions, or for damages resulting from the use of the information con- tained herein. ISBN: 978-0-596-51920-9 [M] 1226506094 Table of Contents Foreword ................................................................... ix Preface ..................................................................... xi 1. REST Basics ............................................................ 1 Architecture of the World Wide Web 1 SOAP 4 REST 5 Resources and URIs 5 Uniform Interface 7 Resource Representations 9 Implementing a Simple RESTful Service Example 11 Resources 11 URIs and Uniform Interface 11 Representations 12 Interaction 13 Wrap-Up 14 Processes 16 Summary 16 2. WCF RESTful Programming Model ........................................ 19 Isn’t WCF All About SOAP? 19 Channels and Dispatching 19 HTTP Programming with WCF 3.0 22 Web Programming in WCF 3.5 27 WebHttpBinding 30 WebHttpBehavior 30 WebServiceHost 31 WebOperationContext 31 WebGetAttribute 32 UriTemplate 33 UriTemplate Literal Values 42 v UriTemplate Special Values 43 UriTemplate QueryString 43 Summary 44 3. Programming Read-Only Services ........................................ 47 Using WebGetAttribute and UriTemplate 47 Data Formats 49 Message 50 DataContract 52 XmlSerializer 55 Hybrid Approach 57 Summary 58 4. Programming Read/Write Services ........................................ 59 POST, PUT, and DELETE 59 Using WebInvokeAttribute 60 Resources 60 URIs and Uniform Interface 60 Representations 61 Implementation 61 Summary 71 5. Hosting WCF RESTful Services ............................................ 73 WCF REST Hosting Isn’t a Special Case 73 Self-Hosting 74 Configuring, Opening, and Closing a ServiceHost 74 Base Addresses 79 ServiceHost Versus WebServiceHost 80 Custom ServiceHost 84 Hosting in IIS 86 ASP.NET Compatibility 92 Multiple Hostnames 95 Removing the .svc File Extension 96 Custom ServiceHostFactory 98 Hosting Wrap-Up 99 Summary 99 6. Programming Feeds ................................................... 101 Building a Feed with WCF 101 SyndicationItem 105 Formatters 107 Exposing a Feed on a Live URI 110 Feed Validation 111 vi | Table of Contents Adding Links to a Feed 115 Summary 117 7. Programming Ajax and Silverlight Clients ................................. 119 WCF Web Services and Ajax 120 JSON 123 JSON-Enabling a Service Endpoint 127 ASP.NET Ajax 132 Silverlight 1.0 141 Silverlight 2.0 142 Parsing XML in Silverlight 2.0 144 Parsing JSON in Silverlight 2.0 151 Consuming Feeds in Silverlight 2.0 152 Cross-Domain Security in Silverlight 2.0 154 Returning JSON and XML Conditionally with a Single Method 154 Summary 157 8. Securing REST Endpoints ............................................... 159 Authenticating: Self-Hosted Endpoints 159 Setting Endpoint Security: WebHttpBinding.Security’s Mode Property 161 Setting Authentication Requirements: WebHttpBinding’s Transport Property 165 Authenticating: Managed Hosting Endpoints 169 Authorizing Endpoints 170 Authorization with Impersonation 170 Role-Based Authorization 171 Summary 174 9. Using Workflow to Deliver REST Services .................................. 175 Consuming REST Services from WF 175 The SendActivity Instance 176 The ReceiveActivity Instance 181 Stateless Workflow Services 182 Stateful Workflow Services 189 Summary 193 10. Consuming RESTful XML Services Using WCF ............................... 195 Defining the Client 195 Generating the Contract 197 Creating the Resource Representations 199 Creating the ServiceContract 207 Using the Service 209 Client Extensibility 214 Table of Contents | vii Summary 216 11. Working with HTTP .................................................... 217 Programming HTTP with WCF 217 IncomingWebRequestContext 219 OutgoingWebResponseContext 220 OutgoingWebRequestContext 222 IncomingWebResponseContext 223 Context Wrap-Up 223 Status Codes 224 201 — Created 227 404 — Not Found 229 Conditional GET 231 LastModified 232 ETags 236 Caching 239 Output Caching 239 HttpContext.Cache 241 Content-Type 242 Summary 243 A. WCF 3.5 SP1 .......................................................... 245 B. ADO.NET Data Services ................................................. 257 C. ADO.NET Entity Framework Walkthrough ................................. 273 Index ..................................................................... 279 viii | Table of Contents

Description:
RESTful .NET is the first book that teaches Windows developers to build RESTful web services using the latest Microsoft tools. Written by Windows Communication Foundation (WFC) expert Jon Flanders, this hands-on tutorial demonstrates how you can use WCF and other components of the .NET 3.5 Framework
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.