SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Downloaden Sie, um offline zu lesen
info@newsteplearning.com
                                                                            www.newsteplearning.com
                                                                            (425) 522-3727




Understanding and Programming
SharePoint Web Services



  Professional Learning Programs for Microsoft SharePoint, Office 365 and Windows Azure
About Chris Beckett
               Solution Architect
              Learning Consultant
                  and Trainer
                                                  @sharepointbits


  MCM
  MCT
  MCSE
  MCPD
                24+10
     blog.sharepointbits.com        chris@newsteplearning.com
Agenda



 Introduction to
 SharePoint Web
     Services
                     SOAP          Client-Side
                                                 REST API
                   Web Services   Object Model
What is a Web Service?

    A software system designed
    to support interoperable
    machine-to-machine
    interaction over a network

                            W3C
A Web Services Story
1           2          3




4            5         6
Available SharePoint Web Services

      SOAP              Client Side Object            ODATA
    Web Services         Model (CSOM)               Web Services



• Open Standards      • Microsoft Proprietary   • Open Standards
• RPC Model           • Batch RPC Model         • REST Model
• Protocol Agnostic   • Client Runtime          • HTTP Only
• XML                 • XML / JSON              • ATOM / JSON
SharePoint 2010 Web Service Access
                          SOAP   CSOM   ODATA

 Lists and Libraries

 Site and List Settings

 Site Security

 Workflow

 Search

 Managed Metadata

 User Profiles

 Publishing
SharePoint 2010 Web Service Clients
                     SOAP   CSOM   ODATA

 JavaScript

 Silverlight

 .NET

 Windows Phone

 Other Languages

 InfoPath Receive

 InfoPath Submit

 BCS WCF Connector
SharePoint 2013 Web Service Access
                             SOAP      CSOM   ODATA

 Lists and Libraries

 Site and List Settings

 Site Security

 Workflow
                          Deprecated
 Search

 Managed Metadata

 User Profiles

 Publishing
SharePoint 2010 Web Service Clients
                        SOAP      CSOM   ODATA

 JavaScript

 Silverlight

 .NET

 Windows Phone
                     Deprecated
 Other Languages

 InfoPath Receive

 InfoPath Submit

 BCS WCF Connector
Agenda



                  Programming with
                     SOAP-Based
                    Web Services
 Understanding                       Programming with    Programming with
 SharePoint Web                        the Client-Side   the ODATA RESTful
    Services                            Object Model        Web Services
What is SOAP?
           Created by Microsoft in 1998 / W3C Standard


           Protocol Agnostic / Common to use HTTP


           RPC Message Pattern (Request/Response)


           XML Schema used for Message Structures
SOAP Request Message Format

                  SOAP Envelope




                           SOAP Body




             Method and
             Parameters
SOAP Response Message Format
                SOAP Envelope




                                   SOAP Body




                    Response Xml
SOAP Considerations



• All Versions of SharePoint      • Designed to work with Proxy
• Ubiquitous                      • Not JavaScript Friendly
   • Protocol Agnostic            • Verbose Xml Data
   • Language Agnostic            • No Anonymous
• Access to Enterprise Services
SharePoint Web Service Addresses
Web Service     Web Service Address
Search          http://<site>/_vti_bin/search.asmx
User Profiles   http://<site>/_vti_bin/userprofileservice.asmx
Sites           http://<site>/_vti_bin/sites.asmx
Lists           http://<site>/_vti_bin/lists.asmx
Permissions     http://<site>/_vti_bin/permissions.asmx
Copy            http://<site>/_vti_bin/copy.asmx


 31 Public Web Services (25+6) in SharePoint
Service Descriptions
                        Provides Humans
                       with Operations and
                            Signatures
Web Service Definition Language

                            ?WSDL
Visual Studio Service Reference
                            Specify
                        Web Service URL


                          Proxy Class
                             Name


                        Browse Available
                           Operations


                         Specify Proxy
                          Namespace
Auto-generated Service Proxy
                       Create Proxy
                         Instance

                                           Set
                                        Credentials


                            Invoke Methods




                                      Process
                                      Output
spservices.codeplex.com
Programming with SPServices
                      Create a Parameters
                             Array



                       Anon Function for
                          Complete



                      Invoke Library with
                          Parameters
Agenda



                                     Programming with
                                       the Client-Side
                                        Object Model
 Understanding    Programming with                       Programming with
 SharePoint Web      SOAP-Based                          the ODATA RESTful
    Services        Web Services                            Web Services
What is the CSOM?
            Proprietary Microsoft SharePoint Client API


            .NET / Silverlight / WP7 / ECMAScript


            Mimics Server-side Object Model


            Proprietary Message Transfer Format
CSOM Architecture
CSOM Considerations



• Efficient for Batch Operations   • Less Efficient for Simple
• Familiar for SharePoint            Operations
  Developers                       • Unfamiliar to Web Developers
• Supports LINQ Queries            • Limited # of Client Runtimes
• Works with Anonymous             • Microsoft Proprietary
Context and Authentication (.NET)
                               Default is
                               Windows
                             Authentication
CSOM (ECMAScript)

                      Create a Context



                     Load the Context



                    Execute Async Query



                     Access Properties
CSOM (.NET)

              Create a Context


              Load the Context



               Execute Query


              Access Properties
CSOM Request




               Protocol is documented, but
                you don’t want to be hand-
                  tooling these requests
Client Library Assemblies
                      .NET assemblies found under

                              /15/ISAPI

                        * Silverlight located at:
                    /15/Template/Layouts/Client
Client Components SDK
                        Installs all client
                            runtime
                          components
Agenda



                                                         Programming with
                                                         the ODATA RESTful
                                                            Web Services
 Understanding    Programming with   Programming with
 SharePoint Web      SOAP-Based        the Client-Side
    Services        Web Services        Object Model
What is REST?
           Representational State Transfer


           Web Addressable Resources / Hyperlink-able


           Maps CRUD operations with HTTP Verbs


           Commonly uses JSON for Data Messages
REST Considerations



• Efficient for Batch Operations   • Less Efficient for Simple
• Familiar for SharePoint            Operations
  Developers                       • Unfamiliar to Web Developers
• Supports LINQ Queries            • Limited # of Client Runtimes
• Works with Anonymous             • Microsoft Proprietary
www.odata.org
ODATA Operations and Parameters
         Operations                 Parameters

GET (Retrieve)            $filter={simple predicate}
POST (Create)             $expand={Entity}
PUT (Update All Fields)   $order by={property}
DELETE (Delete)           $skip={n}
MERGE (Update Specific)   $top={n}
                          $metadata
List Data Service (ECMA Script)
More Information
Choose the Right API set with SharePoint 2013
http://msdn.microsoft.com/en-us/library/jj164060.aspx
Complete Basic Operations with the SharePoint 2013 Client Library
http://msdn.microsoft.com/en-us/library/fp179912.aspx
Programming using the SharePoint 2013 REST Service
http://msdn.microsoft.com/en-us/library/fp142385.aspx
SharePoint 2010 Web Services
http://msdn.microsoft.com/en-us/library/ee705814(v=office.14).aspx
Accessing SharePoint 2010 Lists by Using WCF Data Services
http://msdn.microsoft.com/en-us/library/hh134614(v=office.14).aspx
Questions
Thank you for attending!

   chris@newsteplearning.com

   (425) 522-3727

   @sharepointbits

   blog.sharepointbits.com


Please complete your
evaluations. Your feedback is
appreciated 

Weitere ähnliche Inhalte

Was ist angesagt?

Designing for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted AppsDesigning for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted AppsRoy Kim
 
Pitfalls of Migrating to SharePoint 2010
Pitfalls of Migrating to SharePoint 2010Pitfalls of Migrating to SharePoint 2010
Pitfalls of Migrating to SharePoint 2010Dan Usher
 
Share point 2010 performance and capacity planning best practices
Share point 2010 performance and capacity planning best practicesShare point 2010 performance and capacity planning best practices
Share point 2010 performance and capacity planning best practicesEric Shupps
 
The World Needs an Alternative to SharePoint
The World Needs an Alternative to SharePointThe World Needs an Alternative to SharePoint
The World Needs an Alternative to SharePointAlfresco Software
 
Enterprise Spring Building Scalable Applications
Enterprise Spring Building Scalable ApplicationsEnterprise Spring Building Scalable Applications
Enterprise Spring Building Scalable ApplicationsGordon Dickens
 
Getting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online developmentGetting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online developmentJeremy Thake
 
Ibm 1 Wps Arch
Ibm 1 Wps ArchIbm 1 Wps Arch
Ibm 1 Wps Archluohd
 
Introduction to share point 2010 development
Introduction to share point 2010 developmentIntroduction to share point 2010 development
Introduction to share point 2010 developmentEric Shupps
 
DD109 Claims Based AuthN in SharePoint 2010
DD109 Claims Based AuthN in SharePoint 2010DD109 Claims Based AuthN in SharePoint 2010
DD109 Claims Based AuthN in SharePoint 2010Spencer Harbar
 
Alfresco Day Brussels 2016 - Alfresco One Product Suite Update + Demo
Alfresco Day Brussels 2016 - Alfresco One Product Suite Update + DemoAlfresco Day Brussels 2016 - Alfresco One Product Suite Update + Demo
Alfresco Day Brussels 2016 - Alfresco One Product Suite Update + DemoAlfresco Software
 
Getting Started with SharePoint Development
Getting Started with SharePoint DevelopmentGetting Started with SharePoint Development
Getting Started with SharePoint DevelopmentChakkaradeep Chandran
 
Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointJeremy Thake
 
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity APIBuilding SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity APISharePointRadi
 
Spring Social - Messaging Friends & Influencing People
Spring Social - Messaging Friends & Influencing PeopleSpring Social - Messaging Friends & Influencing People
Spring Social - Messaging Friends & Influencing PeopleGordon Dickens
 
Silverlight Document Search Engine
Silverlight Document Search EngineSilverlight Document Search Engine
Silverlight Document Search EngineMustata Bogdan
 
Exciting New Alfresco REST APIs
Exciting New Alfresco REST APIsExciting New Alfresco REST APIs
Exciting New Alfresco REST APIsJ V
 
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7CA API Management
 
SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012
SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012
SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012Joris Poelmans
 
Rest api webinar(3)
Rest api webinar(3)Rest api webinar(3)
Rest api webinar(3)WSO2
 

Was ist angesagt? (20)

Designing for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted AppsDesigning for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted Apps
 
Pitfalls of Migrating to SharePoint 2010
Pitfalls of Migrating to SharePoint 2010Pitfalls of Migrating to SharePoint 2010
Pitfalls of Migrating to SharePoint 2010
 
Share point 2010 performance and capacity planning best practices
Share point 2010 performance and capacity planning best practicesShare point 2010 performance and capacity planning best practices
Share point 2010 performance and capacity planning best practices
 
The World Needs an Alternative to SharePoint
The World Needs an Alternative to SharePointThe World Needs an Alternative to SharePoint
The World Needs an Alternative to SharePoint
 
Enterprise Spring Building Scalable Applications
Enterprise Spring Building Scalable ApplicationsEnterprise Spring Building Scalable Applications
Enterprise Spring Building Scalable Applications
 
Getting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online developmentGetting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online development
 
Ibm 1 Wps Arch
Ibm 1 Wps ArchIbm 1 Wps Arch
Ibm 1 Wps Arch
 
Introduction to share point 2010 development
Introduction to share point 2010 developmentIntroduction to share point 2010 development
Introduction to share point 2010 development
 
DD109 Claims Based AuthN in SharePoint 2010
DD109 Claims Based AuthN in SharePoint 2010DD109 Claims Based AuthN in SharePoint 2010
DD109 Claims Based AuthN in SharePoint 2010
 
Alfresco Day Brussels 2016 - Alfresco One Product Suite Update + Demo
Alfresco Day Brussels 2016 - Alfresco One Product Suite Update + DemoAlfresco Day Brussels 2016 - Alfresco One Product Suite Update + Demo
Alfresco Day Brussels 2016 - Alfresco One Product Suite Update + Demo
 
Windows Azure
Windows AzureWindows Azure
Windows Azure
 
Getting Started with SharePoint Development
Getting Started with SharePoint DevelopmentGetting Started with SharePoint Development
Getting Started with SharePoint Development
 
Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
 
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity APIBuilding SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
 
Spring Social - Messaging Friends & Influencing People
Spring Social - Messaging Friends & Influencing PeopleSpring Social - Messaging Friends & Influencing People
Spring Social - Messaging Friends & Influencing People
 
Silverlight Document Search Engine
Silverlight Document Search EngineSilverlight Document Search Engine
Silverlight Document Search Engine
 
Exciting New Alfresco REST APIs
Exciting New Alfresco REST APIsExciting New Alfresco REST APIs
Exciting New Alfresco REST APIs
 
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
 
SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012
SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012
SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012
 
Rest api webinar(3)
Rest api webinar(3)Rest api webinar(3)
Rest api webinar(3)
 

Ähnlich wie SharePoint Data Anywhere and Everywhere by Chris Beckett - SPTechCon

Session 7 - Integrating share point with silverlight firestarter
Session 7 - Integrating share point with silverlight firestarterSession 7 - Integrating share point with silverlight firestarter
Session 7 - Integrating share point with silverlight firestarterMithun T. Dhar
 
Programming SharePoint 2010 with Visual Studio 2010
Programming SharePoint 2010 with Visual Studio 2010Programming SharePoint 2010 with Visual Studio 2010
Programming SharePoint 2010 with Visual Studio 2010Quang Nguyễn Bá
 
Understanding and programming the SharePoint REST API
Understanding and programming the SharePoint REST APIUnderstanding and programming the SharePoint REST API
Understanding and programming the SharePoint REST APIChris Beckett
 
Rest API and Client OM for Developer
Rest API and Client OM for DeveloperRest API and Client OM for Developer
Rest API and Client OM for DeveloperInnoTech
 
Mike Taulty MIX10 Silverlight 4 Patterns Frameworks
Mike Taulty MIX10 Silverlight 4 Patterns FrameworksMike Taulty MIX10 Silverlight 4 Patterns Frameworks
Mike Taulty MIX10 Silverlight 4 Patterns Frameworksukdpe
 
(ATS3-GS03) Accelrys Enterprise Platform Deeper Dive
(ATS3-GS03) Accelrys Enterprise Platform Deeper Dive(ATS3-GS03) Accelrys Enterprise Platform Deeper Dive
(ATS3-GS03) Accelrys Enterprise Platform Deeper DiveBIOVIA
 
SharePoint in Clouds - Autoprovisioned apps with SharePoint 2013
SharePoint in Clouds - Autoprovisioned apps with SharePoint 2013SharePoint in Clouds - Autoprovisioned apps with SharePoint 2013
SharePoint in Clouds - Autoprovisioned apps with SharePoint 2013Adis Jugo
 
Interoperability Ms Sap
Interoperability Ms SapInteroperability Ms Sap
Interoperability Ms Sapricharoy
 
Sp2013 overview biwug
Sp2013 overview biwugSp2013 overview biwug
Sp2013 overview biwugBIWUG
 
Sp2013 overview
Sp2013 overviewSp2013 overview
Sp2013 overviewBIWUG
 
Getting Enough REST? Understanding the SharePoint 2013 REST / ODATA Services
Getting Enough REST? Understanding the SharePoint 2013 REST / ODATA ServicesGetting Enough REST? Understanding the SharePoint 2013 REST / ODATA Services
Getting Enough REST? Understanding the SharePoint 2013 REST / ODATA ServicesHilton Giesenow
 
SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3
SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3
SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3Ivan Sanders
 
What’s New for Devs
What’s New for DevsWhat’s New for Devs
What’s New for DevsMicrosoftFeed
 
Social Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech DaySocial Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech DayTechMaster Vietnam
 
Web api using rest based architecture
Web api using rest based architectureWeb api using rest based architecture
Web api using rest based architectureSoham Kulkarni
 
Sap xi online training
Sap xi online trainingSap xi online training
Sap xi online trainingVenkat reddy
 
SPS- Share Point 2010 and Windows Azure
SPS- Share Point 2010 and Windows AzureSPS- Share Point 2010 and Windows Azure
SPS- Share Point 2010 and Windows AzureShakir Majeed Khan
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NETSharePointKE
 
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL RoutingBIOVIA
 

Ähnlich wie SharePoint Data Anywhere and Everywhere by Chris Beckett - SPTechCon (20)

Session 7 - Integrating share point with silverlight firestarter
Session 7 - Integrating share point with silverlight firestarterSession 7 - Integrating share point with silverlight firestarter
Session 7 - Integrating share point with silverlight firestarter
 
Programming SharePoint 2010 with Visual Studio 2010
Programming SharePoint 2010 with Visual Studio 2010Programming SharePoint 2010 with Visual Studio 2010
Programming SharePoint 2010 with Visual Studio 2010
 
Understanding and programming the SharePoint REST API
Understanding and programming the SharePoint REST APIUnderstanding and programming the SharePoint REST API
Understanding and programming the SharePoint REST API
 
What's new for Developers in SharePoint 2013
What's new for Developers in SharePoint 2013What's new for Developers in SharePoint 2013
What's new for Developers in SharePoint 2013
 
Rest API and Client OM for Developer
Rest API and Client OM for DeveloperRest API and Client OM for Developer
Rest API and Client OM for Developer
 
Mike Taulty MIX10 Silverlight 4 Patterns Frameworks
Mike Taulty MIX10 Silverlight 4 Patterns FrameworksMike Taulty MIX10 Silverlight 4 Patterns Frameworks
Mike Taulty MIX10 Silverlight 4 Patterns Frameworks
 
(ATS3-GS03) Accelrys Enterprise Platform Deeper Dive
(ATS3-GS03) Accelrys Enterprise Platform Deeper Dive(ATS3-GS03) Accelrys Enterprise Platform Deeper Dive
(ATS3-GS03) Accelrys Enterprise Platform Deeper Dive
 
SharePoint in Clouds - Autoprovisioned apps with SharePoint 2013
SharePoint in Clouds - Autoprovisioned apps with SharePoint 2013SharePoint in Clouds - Autoprovisioned apps with SharePoint 2013
SharePoint in Clouds - Autoprovisioned apps with SharePoint 2013
 
Interoperability Ms Sap
Interoperability Ms SapInteroperability Ms Sap
Interoperability Ms Sap
 
Sp2013 overview biwug
Sp2013 overview biwugSp2013 overview biwug
Sp2013 overview biwug
 
Sp2013 overview
Sp2013 overviewSp2013 overview
Sp2013 overview
 
Getting Enough REST? Understanding the SharePoint 2013 REST / ODATA Services
Getting Enough REST? Understanding the SharePoint 2013 REST / ODATA ServicesGetting Enough REST? Understanding the SharePoint 2013 REST / ODATA Services
Getting Enough REST? Understanding the SharePoint 2013 REST / ODATA Services
 
SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3
SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3
SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3
 
What’s New for Devs
What’s New for DevsWhat’s New for Devs
What’s New for Devs
 
Social Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech DaySocial Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech Day
 
Web api using rest based architecture
Web api using rest based architectureWeb api using rest based architecture
Web api using rest based architecture
 
Sap xi online training
Sap xi online trainingSap xi online training
Sap xi online training
 
SPS- Share Point 2010 and Windows Azure
SPS- Share Point 2010 and Windows AzureSPS- Share Point 2010 and Windows Azure
SPS- Share Point 2010 and Windows Azure
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
 
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing
(ATS4-DEV04) Protocols as RESTful Services and RESTful URL Routing
 

Mehr von SPTechCon

Deep Dive into the Content Query Web Part by Christina Wheeler - SPTechCon
Deep Dive into the Content Query Web Part by Christina Wheeler - SPTechConDeep Dive into the Content Query Web Part by Christina Wheeler - SPTechCon
Deep Dive into the Content Query Web Part by Christina Wheeler - SPTechConSPTechCon
 
NOW I Get It... What SharePoint Is, and Why My Business Needs It by Mark Rack...
NOW I Get It... What SharePoint Is, and Why My Business Needs It by Mark Rack...NOW I Get It... What SharePoint Is, and Why My Business Needs It by Mark Rack...
NOW I Get It... What SharePoint Is, and Why My Business Needs It by Mark Rack...SPTechCon
 
“Managing Up” in Difficult Situations by Bill English - SPTechCon
“Managing Up” in Difficult Situations by Bill English - SPTechCon“Managing Up” in Difficult Situations by Bill English - SPTechCon
“Managing Up” in Difficult Situations by Bill English - SPTechConSPTechCon
 
Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...
Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...
Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...SPTechCon
 
Part II: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTe...
Part II: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTe...Part II: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTe...
Part II: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTe...SPTechCon
 
Microsoft Keynote by Richard Riley - SPTechCon
Microsoft Keynote by Richard Riley - SPTechConMicrosoft Keynote by Richard Riley - SPTechCon
Microsoft Keynote by Richard Riley - SPTechConSPTechCon
 
Ten Best SharePoint Features You’ve Never Used by Christian Buckley - SPTechCon
Ten Best SharePoint Features You’ve Never Used by Christian Buckley - SPTechConTen Best SharePoint Features You’ve Never Used by Christian Buckley - SPTechCon
Ten Best SharePoint Features You’ve Never Used by Christian Buckley - SPTechConSPTechCon
 
Looking Under the Hood: How Your Metadata Strategy Impacts Everything You Do ...
Looking Under the Hood: How Your Metadata Strategy Impacts Everything You Do ...Looking Under the Hood: How Your Metadata Strategy Impacts Everything You Do ...
Looking Under the Hood: How Your Metadata Strategy Impacts Everything You Do ...SPTechCon
 
Law & Order: Content Governance Strategies by Chrisitan Buckley - SPTechCon
Law & Order: Content Governance Strategies by Chrisitan Buckley - SPTechConLaw & Order: Content Governance Strategies by Chrisitan Buckley - SPTechCon
Law & Order: Content Governance Strategies by Chrisitan Buckley - SPTechConSPTechCon
 
What IS SharePoint Development? by Mark Rackley - SPTechCon
 What IS SharePoint Development? by Mark Rackley - SPTechCon What IS SharePoint Development? by Mark Rackley - SPTechCon
What IS SharePoint Development? by Mark Rackley - SPTechConSPTechCon
 
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConThe SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConSPTechCon
 
Understanding and Implementing Governance for SharePoint 2010 by Bill English...
Understanding and Implementing Governance for SharePoint 2010 by Bill English...Understanding and Implementing Governance for SharePoint 2010 by Bill English...
Understanding and Implementing Governance for SharePoint 2010 by Bill English...SPTechCon
 
Integrate External Data with the Business Connectivity Services by Tom Resing...
Integrate External Data with the Business Connectivity Services by Tom Resing...Integrate External Data with the Business Connectivity Services by Tom Resing...
Integrate External Data with the Business Connectivity Services by Tom Resing...SPTechCon
 
Converting an E-mail Culture into a SharePoint Culture by Robert Bogue - SPTe...
Converting an E-mail Culture into a SharePoint Culture by Robert Bogue - SPTe...Converting an E-mail Culture into a SharePoint Culture by Robert Bogue - SPTe...
Converting an E-mail Culture into a SharePoint Culture by Robert Bogue - SPTe...SPTechCon
 
Tutorial: Best Practices for Building a Records-Management Deployment in Shar...
Tutorial: Best Practices for Building a Records-Management Deployment in Shar...Tutorial: Best Practices for Building a Records-Management Deployment in Shar...
Tutorial: Best Practices for Building a Records-Management Deployment in Shar...SPTechCon
 
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...SPTechCon
 
Creating Simple Dashboards Using Out-of-the-Box Web Parts by Jennifer Mason- ...
Creating Simple Dashboards Using Out-of-the-Box Web Parts by Jennifer Mason- ...Creating Simple Dashboards Using Out-of-the-Box Web Parts by Jennifer Mason- ...
Creating Simple Dashboards Using Out-of-the-Box Web Parts by Jennifer Mason- ...SPTechCon
 
Sponsored Session: Better Document Management Using SharePoint by Roland Simo...
Sponsored Session: Better Document Management Using SharePoint by Roland Simo...Sponsored Session: Better Document Management Using SharePoint by Roland Simo...
Sponsored Session: Better Document Management Using SharePoint by Roland Simo...SPTechCon
 
Sponsored Session: The Missing Link: Content-Aware Integration to SharePoint ...
Sponsored Session: The Missing Link: Content-Aware Integration to SharePoint ...Sponsored Session: The Missing Link: Content-Aware Integration to SharePoint ...
Sponsored Session: The Missing Link: Content-Aware Integration to SharePoint ...SPTechCon
 
Creating a Great User Experience in SharePoint by Marc Anderson - SPTechCon
Creating a Great User Experience in SharePoint by Marc Anderson - SPTechConCreating a Great User Experience in SharePoint by Marc Anderson - SPTechCon
Creating a Great User Experience in SharePoint by Marc Anderson - SPTechConSPTechCon
 

Mehr von SPTechCon (20)

Deep Dive into the Content Query Web Part by Christina Wheeler - SPTechCon
Deep Dive into the Content Query Web Part by Christina Wheeler - SPTechConDeep Dive into the Content Query Web Part by Christina Wheeler - SPTechCon
Deep Dive into the Content Query Web Part by Christina Wheeler - SPTechCon
 
NOW I Get It... What SharePoint Is, and Why My Business Needs It by Mark Rack...
NOW I Get It... What SharePoint Is, and Why My Business Needs It by Mark Rack...NOW I Get It... What SharePoint Is, and Why My Business Needs It by Mark Rack...
NOW I Get It... What SharePoint Is, and Why My Business Needs It by Mark Rack...
 
“Managing Up” in Difficult Situations by Bill English - SPTechCon
“Managing Up” in Difficult Situations by Bill English - SPTechCon“Managing Up” in Difficult Situations by Bill English - SPTechCon
“Managing Up” in Difficult Situations by Bill English - SPTechCon
 
Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...
Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...
Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...
 
Part II: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTe...
Part II: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTe...Part II: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTe...
Part II: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTe...
 
Microsoft Keynote by Richard Riley - SPTechCon
Microsoft Keynote by Richard Riley - SPTechConMicrosoft Keynote by Richard Riley - SPTechCon
Microsoft Keynote by Richard Riley - SPTechCon
 
Ten Best SharePoint Features You’ve Never Used by Christian Buckley - SPTechCon
Ten Best SharePoint Features You’ve Never Used by Christian Buckley - SPTechConTen Best SharePoint Features You’ve Never Used by Christian Buckley - SPTechCon
Ten Best SharePoint Features You’ve Never Used by Christian Buckley - SPTechCon
 
Looking Under the Hood: How Your Metadata Strategy Impacts Everything You Do ...
Looking Under the Hood: How Your Metadata Strategy Impacts Everything You Do ...Looking Under the Hood: How Your Metadata Strategy Impacts Everything You Do ...
Looking Under the Hood: How Your Metadata Strategy Impacts Everything You Do ...
 
Law & Order: Content Governance Strategies by Chrisitan Buckley - SPTechCon
Law & Order: Content Governance Strategies by Chrisitan Buckley - SPTechConLaw & Order: Content Governance Strategies by Chrisitan Buckley - SPTechCon
Law & Order: Content Governance Strategies by Chrisitan Buckley - SPTechCon
 
What IS SharePoint Development? by Mark Rackley - SPTechCon
 What IS SharePoint Development? by Mark Rackley - SPTechCon What IS SharePoint Development? by Mark Rackley - SPTechCon
What IS SharePoint Development? by Mark Rackley - SPTechCon
 
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConThe SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
 
Understanding and Implementing Governance for SharePoint 2010 by Bill English...
Understanding and Implementing Governance for SharePoint 2010 by Bill English...Understanding and Implementing Governance for SharePoint 2010 by Bill English...
Understanding and Implementing Governance for SharePoint 2010 by Bill English...
 
Integrate External Data with the Business Connectivity Services by Tom Resing...
Integrate External Data with the Business Connectivity Services by Tom Resing...Integrate External Data with the Business Connectivity Services by Tom Resing...
Integrate External Data with the Business Connectivity Services by Tom Resing...
 
Converting an E-mail Culture into a SharePoint Culture by Robert Bogue - SPTe...
Converting an E-mail Culture into a SharePoint Culture by Robert Bogue - SPTe...Converting an E-mail Culture into a SharePoint Culture by Robert Bogue - SPTe...
Converting an E-mail Culture into a SharePoint Culture by Robert Bogue - SPTe...
 
Tutorial: Best Practices for Building a Records-Management Deployment in Shar...
Tutorial: Best Practices for Building a Records-Management Deployment in Shar...Tutorial: Best Practices for Building a Records-Management Deployment in Shar...
Tutorial: Best Practices for Building a Records-Management Deployment in Shar...
 
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
 
Creating Simple Dashboards Using Out-of-the-Box Web Parts by Jennifer Mason- ...
Creating Simple Dashboards Using Out-of-the-Box Web Parts by Jennifer Mason- ...Creating Simple Dashboards Using Out-of-the-Box Web Parts by Jennifer Mason- ...
Creating Simple Dashboards Using Out-of-the-Box Web Parts by Jennifer Mason- ...
 
Sponsored Session: Better Document Management Using SharePoint by Roland Simo...
Sponsored Session: Better Document Management Using SharePoint by Roland Simo...Sponsored Session: Better Document Management Using SharePoint by Roland Simo...
Sponsored Session: Better Document Management Using SharePoint by Roland Simo...
 
Sponsored Session: The Missing Link: Content-Aware Integration to SharePoint ...
Sponsored Session: The Missing Link: Content-Aware Integration to SharePoint ...Sponsored Session: The Missing Link: Content-Aware Integration to SharePoint ...
Sponsored Session: The Missing Link: Content-Aware Integration to SharePoint ...
 
Creating a Great User Experience in SharePoint by Marc Anderson - SPTechCon
Creating a Great User Experience in SharePoint by Marc Anderson - SPTechConCreating a Great User Experience in SharePoint by Marc Anderson - SPTechCon
Creating a Great User Experience in SharePoint by Marc Anderson - SPTechCon
 

SharePoint Data Anywhere and Everywhere by Chris Beckett - SPTechCon

  • 1. info@newsteplearning.com www.newsteplearning.com (425) 522-3727 Understanding and Programming SharePoint Web Services Professional Learning Programs for Microsoft SharePoint, Office 365 and Windows Azure
  • 2. About Chris Beckett Solution Architect Learning Consultant and Trainer @sharepointbits MCM MCT MCSE MCPD 24+10 blog.sharepointbits.com chris@newsteplearning.com
  • 3. Agenda Introduction to SharePoint Web Services SOAP Client-Side REST API Web Services Object Model
  • 4. What is a Web Service? A software system designed to support interoperable machine-to-machine interaction over a network W3C
  • 5. A Web Services Story 1 2 3 4 5 6
  • 6. Available SharePoint Web Services SOAP Client Side Object ODATA Web Services Model (CSOM) Web Services • Open Standards • Microsoft Proprietary • Open Standards • RPC Model • Batch RPC Model • REST Model • Protocol Agnostic • Client Runtime • HTTP Only • XML • XML / JSON • ATOM / JSON
  • 7. SharePoint 2010 Web Service Access SOAP CSOM ODATA Lists and Libraries Site and List Settings Site Security Workflow Search Managed Metadata User Profiles Publishing
  • 8. SharePoint 2010 Web Service Clients SOAP CSOM ODATA JavaScript Silverlight .NET Windows Phone Other Languages InfoPath Receive InfoPath Submit BCS WCF Connector
  • 9. SharePoint 2013 Web Service Access SOAP CSOM ODATA Lists and Libraries Site and List Settings Site Security Workflow Deprecated Search Managed Metadata User Profiles Publishing
  • 10. SharePoint 2010 Web Service Clients SOAP CSOM ODATA JavaScript Silverlight .NET Windows Phone Deprecated Other Languages InfoPath Receive InfoPath Submit BCS WCF Connector
  • 11. Agenda Programming with SOAP-Based Web Services Understanding Programming with Programming with SharePoint Web the Client-Side the ODATA RESTful Services Object Model Web Services
  • 12. What is SOAP? Created by Microsoft in 1998 / W3C Standard Protocol Agnostic / Common to use HTTP RPC Message Pattern (Request/Response) XML Schema used for Message Structures
  • 13. SOAP Request Message Format SOAP Envelope SOAP Body Method and Parameters
  • 14. SOAP Response Message Format SOAP Envelope SOAP Body Response Xml
  • 15. SOAP Considerations • All Versions of SharePoint • Designed to work with Proxy • Ubiquitous • Not JavaScript Friendly • Protocol Agnostic • Verbose Xml Data • Language Agnostic • No Anonymous • Access to Enterprise Services
  • 16. SharePoint Web Service Addresses Web Service Web Service Address Search http://<site>/_vti_bin/search.asmx User Profiles http://<site>/_vti_bin/userprofileservice.asmx Sites http://<site>/_vti_bin/sites.asmx Lists http://<site>/_vti_bin/lists.asmx Permissions http://<site>/_vti_bin/permissions.asmx Copy http://<site>/_vti_bin/copy.asmx 31 Public Web Services (25+6) in SharePoint
  • 17. Service Descriptions Provides Humans with Operations and Signatures
  • 18. Web Service Definition Language ?WSDL
  • 19. Visual Studio Service Reference Specify Web Service URL Proxy Class Name Browse Available Operations Specify Proxy Namespace
  • 20. Auto-generated Service Proxy Create Proxy Instance Set Credentials Invoke Methods Process Output
  • 22. Programming with SPServices Create a Parameters Array Anon Function for Complete Invoke Library with Parameters
  • 23. Agenda Programming with the Client-Side Object Model Understanding Programming with Programming with SharePoint Web SOAP-Based the ODATA RESTful Services Web Services Web Services
  • 24. What is the CSOM? Proprietary Microsoft SharePoint Client API .NET / Silverlight / WP7 / ECMAScript Mimics Server-side Object Model Proprietary Message Transfer Format
  • 26. CSOM Considerations • Efficient for Batch Operations • Less Efficient for Simple • Familiar for SharePoint Operations Developers • Unfamiliar to Web Developers • Supports LINQ Queries • Limited # of Client Runtimes • Works with Anonymous • Microsoft Proprietary
  • 27. Context and Authentication (.NET) Default is Windows Authentication
  • 28. CSOM (ECMAScript) Create a Context Load the Context Execute Async Query Access Properties
  • 29. CSOM (.NET) Create a Context Load the Context Execute Query Access Properties
  • 30. CSOM Request Protocol is documented, but you don’t want to be hand- tooling these requests
  • 31. Client Library Assemblies .NET assemblies found under /15/ISAPI * Silverlight located at: /15/Template/Layouts/Client
  • 32. Client Components SDK Installs all client runtime components
  • 33. Agenda Programming with the ODATA RESTful Web Services Understanding Programming with Programming with SharePoint Web SOAP-Based the Client-Side Services Web Services Object Model
  • 34. What is REST? Representational State Transfer Web Addressable Resources / Hyperlink-able Maps CRUD operations with HTTP Verbs Commonly uses JSON for Data Messages
  • 35. REST Considerations • Efficient for Batch Operations • Less Efficient for Simple • Familiar for SharePoint Operations Developers • Unfamiliar to Web Developers • Supports LINQ Queries • Limited # of Client Runtimes • Works with Anonymous • Microsoft Proprietary
  • 37. ODATA Operations and Parameters Operations Parameters GET (Retrieve) $filter={simple predicate} POST (Create) $expand={Entity} PUT (Update All Fields) $order by={property} DELETE (Delete) $skip={n} MERGE (Update Specific) $top={n} $metadata
  • 38. List Data Service (ECMA Script)
  • 39. More Information Choose the Right API set with SharePoint 2013 http://msdn.microsoft.com/en-us/library/jj164060.aspx Complete Basic Operations with the SharePoint 2013 Client Library http://msdn.microsoft.com/en-us/library/fp179912.aspx Programming using the SharePoint 2013 REST Service http://msdn.microsoft.com/en-us/library/fp142385.aspx SharePoint 2010 Web Services http://msdn.microsoft.com/en-us/library/ee705814(v=office.14).aspx Accessing SharePoint 2010 Lists by Using WCF Data Services http://msdn.microsoft.com/en-us/library/hh134614(v=office.14).aspx
  • 40. Questions Thank you for attending! chris@newsteplearning.com (425) 522-3727 @sharepointbits blog.sharepointbits.com Please complete your evaluations. Your feedback is appreciated 