Consuming Web Services in Microsoft Silverlight 3

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite

    Consuming Web Services in Microsoft Silverlight 3 - Presentation Transcript

    1. Simple Back-End Data Access WCF, SOAP “Data Push” (Server to Client) WCF Mashups (Using REST APIs) REST, XML/JSON, Atom/RSS
    2. Simple Back-End Data Access WCF, SOAP “Data Push” (Server to Client) WCF Mashups (Using REST APIs) REST, XML/JSON, Atom/RSS
    3. System.ServiceModel.CommunicationException: The remote server returned an error: NotFound
    4. Binary XML
    5. “Silverlight-enabled WCF Service” - now Binary by default
    6. Using \"typical\" message payloads HP BL680c: 8 Intel EMT64 cores@2.4GHz Windows Server 2008 64-bit, IIS7 Text / HTTP Web service requests/sec 24% Binary / HTTP 7570 6122 71% 4615 2702 Your mileage may vary 20 objects 100 objects Message size
    7. Using large messages with arrays of \"typical\" data 40% 34% Size reduction 15% Your mileage may vary String Int Large object graph
    8. Attempt #1: Naïve Approach
    9. Attempt #2: Enable Debugging
    10. Error info still not in Silverlight! System.ServiceModel.CommunicationException: The remote server returned an error: NotFound
    11. HTTP 500 HTTP 200 http://code.msdn.com/SilverlightWS
    12. HTTP 200
    13. With Silverlight 3 Faults Support
    14. Example with Cookies + Forms Auth E.g.: ASP.NET login Credentials User: YourDomain.com Password: Auth info (cookie) Service calls + Auth info Browser
    15. Login through Silverlight Call with credentials to YourDomain.com User: ASP.NET Auth Service Password: ASP.NET Reply contains cookie Auth Service Service calls + Auth info Browser
    16. Using Windows Authentication Windows login User: YourDomain.com Password: Service calls + Creds Browser
    17. Cross-Domain Threat MyBank.com Login Credentials User: MyBank.com Password: Auth info (e.g. cookie) Could steal or change data Malicious call + Auth info if protection wasn’t in place Malicious application EvilApps.com
    18. Identity managed by Silverlight, not the Browser YourDomain.com User: Password: Creds are added by Silverlight, not browser No creds EvilApps.com Browser
    19. [OperationContract] public decimal GetAccountBalance (int accountID, string userName, string password);
    20. <!-- WS-Security Header --> <!-- With UserName, Password, Timestamp --> <!-- Message Payload --> Default max skew is 5 minutes – may require changes (Client clock can’t be more that 5 minutes out of sync with server)
    21. sl
    22. Simple Back-End Data Access WCF, SOAP “Data Push” (Server to Client) WCF Mashups (Using REST APIs) REST, XML/JSON, Atom/RSS
    23. EndpointAddress address = new EndpointAddress(\"http://example.com/Service1.svc\"); CustomBinding binding = new CustomBinding( new PollingDuplexBindingElement(), new TextMessageEncodingBindingElement( MessageVersion.Soap12WSAddressing10, Encoding.UTF8), new HttpTransportBindingElement());
    24. CallbackContract=… IsOneWay=true GetCallbackChannel
    25. Simple Back-End Data Access WCF, SOAP “Data Push” (Server to Client) WCF Mashups (Using REST APIs) REST, XML/JSON, Atom/RSS
    26. HTML DOM + JavaScript XmlHttpRequest Proxied through a Service
    27. “Paste XML as Serializable Types”
    28. Simple Back-End Data Access WCF, SOAP “Data Push” (Server to Client) WCF Mashups (Using REST APIs) REST, XML/JSON, Atom/RSS
    29. Your feedback is important!
    30. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
    31. High-level components and User Code HttpWebRequest Browser Plugin APIs Restrictions Web Browser - Cookies - Authenticated sessions Restrictions - Caching - Proxy server to use Windows/Mac Networking Layer
    32. Client Client Any messages? Server Server App Duplex Duplex App Channel 10-15sec Channel No messages Any messages? Message Message Message Any messages? Client Browser Server

    + goodfridaygoodfriday, 7 months ago

    custom

    4284 views, 1 favs, 0 embeds more stats

    Come hear how to work with external REST, SOAP, and more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 4284
      • 4284 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 44
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories