18
Services RESTful et SPA

03 - [ASP.NET Core] Services RESTful et SPA

Embed Size (px)

Citation preview

Page 1: 03 - [ASP.NET Core] Services RESTful et SPA

Services RESTful et SPA

Page 2: 03 - [ASP.NET Core] Services RESTful et SPA

Speaker

http://blog.cellenza.com/author/rboyer

Rémy BoyerConsultant .NET

Page 3: 03 - [ASP.NET Core] Services RESTful et SPA

ASP.NET Web API

Un petit historique

Page 4: 03 - [ASP.NET Core] Services RESTful et SPA

Historique

• Créé en 2012, 3 ans après ASP.NET MVC

• Remplace WCF Data Services (ou ADO.NET Data Services)

• Introduit des concepts fondamentaux proches d’ASP.NET MVC

Couche HTTP

moderneRoutage

Négociation de

contenuFiltres

IoC Self-Hosting System.Web.dllMiddlewares &

Owin

Page 5: 03 - [ASP.NET Core] Services RESTful et SPA

Limitations

• Des dépendances distinctes de MVC

• Impossible de mixer du MVC et du Web API dans un même contrôleur

• Du code utilitaire dupliqué

• Mvc :

• Web Api :

• Self-host, un vœu pieux

• Microsoft.AspNet.WebApi.WebHost héberge Web API sur IIS avec System.Web.dll

this.Request.Headers["User-Agent"]

this.Request.Headers.TryGetValues("User-Agent", out userAgentValues)

Page 6: 03 - [ASP.NET Core] Services RESTful et SPA

Le futur !

Web API et SignalR posent les bases de l’asp.net de demain

Web API est maintenant intégré à ASP.NET MVC Core !

Page 7: 03 - [ASP.NET Core] Services RESTful et SPA

Services RESTful

Routes, requêtes et réponses

Page 8: 03 - [ASP.NET Core] Services RESTful et SPA

Démo

Routage

Page 9: 03 - [ASP.NET Core] Services RESTful et SPA

Démo

Réponses et

contenu

Page 10: 03 - [ASP.NET Core] Services RESTful et SPA

ASP.NET Javascript Services

ASP.NET et les SPA

Page 11: 03 - [ASP.NET Core] Services RESTful et SPA

Les SPA

Les SPA ont gagné en popularité ces dernières années

• De nouveaux frameworks apparaissent constamment

• Elles intéressent de nombreux développeurs

Elles exploitent davantage les capacités des navigateurs

• Elles sont très interactives

• Elles allègent le travail du serveur

• Elles diminuent les appels réseaux

• Il y a beaucoup plus de code client, front : du Javascript

Page 12: 03 - [ASP.NET Core] Services RESTful et SPA

Outillage

De l’outillage adapté s’est développé

• Runtime Javascript autonome (NodeJs)

• Repository de packages (npm)

• Task runners (Grunt, Gulp, Webpack)

• De nouveaux langages (Typescript, …)

• Transpileurs et compilateurs (tsc, Babel)

Page 13: 03 - [ASP.NET Core] Services RESTful et SPA

Outillage

Visual Studio 2015 intègre partiellement ces technologies

Javascript Services vise à combler ces manques

Page 14: 03 - [ASP.NET Core] Services RESTful et SPA

Contenu ASP.NET Javascript Services

Une collection de packages Nuget et npm

• Invocation de code Javascript dans Node.js depuis .NET Core

• Middleware Webpack pendant le développement

• Hot Module Replacement

• Rendu côté serveur du code Javascript

• Routing & Validation, côté client et côté serveur

Un modèle Yeoman pour démarrer les applications

Page 15: 03 - [ASP.NET Core] Services RESTful et SPA

Démo

Intérop

.NET Core

Node.JS

Page 16: 03 - [ASP.NET Core] Services RESTful et SPA

Webpack dev middleware

Webpack peut en faire beaucoup

• Compilation

• Bundling (concaténation, minification, uglification)

• Module Loader

• …

Le Hot Module Reload permet de remplacer le rafraichissement automatique en rechargement incrémental à la volée

• Nécessite webpack-dev-server et l’utilisation de l’hôte NodeJS

Page 17: 03 - [ASP.NET Core] Services RESTful et SPA

Webpack dev middleware

Javascript Services peut intercepter les requêtes de fichiers JS et les compiler à la volée

Browser

<script src="file.js">

ASP.NET Core

Webpack dev Middleware

Node.JS

Compilation Webpack

Page 18: 03 - [ASP.NET Core] Services RESTful et SPA

Démo

Webpack dev

Middleware