Presentation is loading. Please wait.

Presentation is loading. Please wait.

POWERSHELL AND THE WEB PowerShell Summit 2014 Trond Hindenes, Crayon AS

Similar presentations

Presentation on theme: "POWERSHELL AND THE WEB PowerShell Summit 2014 Trond Hindenes, Crayon AS"— Presentation transcript:

1 POWERSHELL AND THE WEB PowerShell Summit 2014 Trond Hindenes, Crayon AS (@trondhindenes)

2 THE IT AUTOMATION PYRAMID IntegrationOrchestration Automation


4 WHY STEP TO THE LEFT? Low quality vendor-supplied CmdLets Lack of functionality

5 TYPES OF WEB SERVICES Generation 1: XML Web Services (SOAP) Stateful (or, acting like they are stateful) Generation 2: RESTful services (JSON/XML) Stateless Good overview at: services-overview/ services-overview/

6 TYPES OF WEB SERVICES (2) SOAP: Access api through methods on the proxy object $citynames = $proxy.LatLonListCityNames(1) REST: Each operation has a URL: http://server/api/customers/fred/orders HTTP DELETE to http://server/api/products/orange

7 AUTHENTICATION GOTCHAS The life of a http request Authentication types: Unauthenticated or IP based Basic/NTLM Token based

8 VISUAL STUDIO LIGHTSWITCH Rapid development of Data-driven applications Can be self-hosted or built as a Sharepoint 2013 app The backend data is served using WCF OData

9 PATTERNS FOR LIGHTSWITCH + POWERSHELL Develop the app Deploy it somewhere Generate proxy dll Use the proxy to interact with the service endpoint

10 EXAMINING THE PROXY DLL Use the VS Object Browser to inspect the dll Or use Ilspy (

11 POWERSHELL AND RESTFUL SERVICES WITH JSON AKA INVOKE-RESTMETHOD JSON – Javascript Object Notation Human readable objects Similar to XML, but lighter weight (XML is wire-heavy) Construct Object Convert to Json Send to server Get stuff back

12 REST GOTCHAS Everything is a PsCustomObject No.gettype() Each request is atomic No state API examples often use curl Important differences between PowerShell and curl (authentication) Be mindful of JSON syntax You'll often end up with lots of "nested" objects

13 GENERATING PROPER OBJECTS New-Struct to the rescue (

14 ASP.NET MVC/WEB API General-purpose web app framework for building stuff Scott Guthries brainchild Web API is a flexible framework for building (among others) RESTful web services Natively supports both JSON and xml


16 FUN WITH WEB SpamTitan (super-simple XML/Rest) Geckoboard (complex json) PagerDuty (simple json)


Download ppt "POWERSHELL AND THE WEB PowerShell Summit 2014 Trond Hindenes, Crayon AS"

Similar presentations

Ads by Google