Client Object Models Operation in SharePoint Online Solutions

The following diagram shows the call and response flow for the client object models in SharePoint Online.

SharePoint Online includes three client object models. The ECMAScript, .NET Framework managed, and Silverlight client object models each include objects that correspond to major objects at the site-collection level or lower in the SharePoint hierarchy. The object models provide a consistent and easy-to-use, object-oriented system for interoperating with SharePoint data from a remote client or server.

Because code written against the client object models runs remotely on the client, it is not subject to the same restrictions as sandboxed solutions, and can, for example, access external data sources.

The client object models are provided through proxy .js files and managed .dll files, which can be referenced in custom applications just as other object models. All operations are inherently asynchronous, and commands are serialized into XML and sent to the server in a single HTTP request. For every command, a corresponding server object model call is made, and the server returns a response to the client in compacted JavaScript Object Notation (JSON) format, which the proxy parses and associates with appropriate objects.

For more information on developing solutions for SharePoint Online, see SharePoint Online: An Overview for Developers, from which this diagram is excerpted.