140 likes | 286 Views
Your apps here!. Introduction to Cloud Hosted Apps. SPS Boston. Bob German Principal Architect. @Bob1German http://blogs.msdn.com/BobGerman/ . Bob German SharePoint Principal Architect at BlueMetal Architects
E N D
Your apps here! Introduction to Cloud Hosted Apps SPS Boston Bob GermanPrincipal Architect
@Bob1Germanhttp://blogs.msdn.com/BobGerman/ Bob German SharePoint Principal Architect at BlueMetal Architects Developer and architect on the SharePoint platform since Site Server 3.0 Co-author of SharePoint 2010 Development with Silverlightfor Addison-Wesley BlueMetal Architects • Boston, New York and Chicago. • We strive to build solutions that exactly meet ourclients’ needs • SharePoint / Information Management • Data Platforms / Analytics ● Design • Mobile Apps ● Enterprise Apps ● App Modernization
Agenda • Brief review of SharePoint Apps • Authentication and Client API’s • Demo 1: WebForms App • Demo 2: MVC App All code is availablefor download
The New App Model Code runs outside of SharePoint • Can’t affect “farm solutions” affecting servers • Give apps just the permission theyneed and no more(like a phone app) • App web isolates app storage foreasy clean-up HostWeb App Web (optional) App Azure,on-Premises, or Anywhere Until now, developing for SharePoint was like developing for MS DOS or Windows 3.1 … no isolation, weak security. It’s time SharePoint development caught up with the rest of the industry!
App Isolation HostWeb http://myserver/sites/myweb/ App Web (optional) http://app12345/sites/myweb/ App http://whatevs.com/somepath/ Azureor other provider Different domain names leverage browsers’ same-origin policy
Where does your App run? App Web External Web Server Optionally Provisioned by SharePoint on app installation No Server Code – period!(though you can leverage installed ASP.NET controls) Code in Javascript on browserAccess host web via cross-domain library May contain declarative, web-scoped features (lists, site pages, client script, images, css) Can be on-premises or in the cloud Auto-hosted apps are provisioned by Office 365 on app installation Provider-hosted apps can run on-premises, in Azure, or anywhere (doesn’t even need to be .NET) Access host and app webs via OAuth – run under: End user’s permissions App permissions HostWeb AppWeb App
User and App Identities * SOAP web services are “deprecated” for SharePoint 2013, but removing them would break a lot of Office integration scenarios
Client API’s REST (Representational Entity State Transfer) • No client-side API components – access from anywhere! (Javascript, .NET, PHP …) • OData compliant content access for easy access by ADO.NET Data Services, Excel, etc. CSOM (Client Side Object Model) • Client API available for Javascript (“JSOM”), .NET, Silverlight • Batched requests are more efficient REST OData CSOM Client App Client App Client App ADO.NET Data Svcs Client CSOM Proxy JSON, ATOM Client Side Endpoints /_api/ Client.svc SharePoint Server API
Client API’s • Site Content • Site Collection Creation • User Profiles • Search • Taxonomy • Feeds • Publishing • Business Connectivity Services • Sharing • Workflow • E-Discovery • IRM • Analytics REST OData CSOM Client App Client App Client App ADO.NET Data Svcs Client CSOM Proxy JSON, ATOM Client Side Endpoints /_api/ Client.svc SharePoint Server API
demo LocationsMaps and displays locations in a contacts list ASP.NET WebForms Uses SharePoint 2013 GeoLocation column Remote event receiver geocodes list items Client web part displays map
.NET Web Development Choices Strong Offering Weak / No Offering
demo PictureViewOrganizes pictures across multiple SharePoint picture libraries ASP.NET MVC Multi-page app using Chrome Control for branding Testable controller using dependency injection Web part shows a slide show
Questions? @Bob1German bobg@bluemetal.com http://blogs.msdn.com/BobGerman