Nowoczesne_API_Ewoluujace_aplikacje_sieciowe_w_technologii_ASP_NET_noapie.pdf

(2705 KB) Pobierz
Tytuł oryginału: Designing Evolvable Web APIs with ASP.NET
Tłumaczenie: Robert Górczyński
ISBN: 978-83-283-2391-9
© 2016 Helion S.A
Authorized Polish translation of the English edition of Designing Evolvable Web APIs with ASP.NET
9781449337711 © 2014 Glenn Block, Pablo Cibraro, Pedro Felix, Howard Dierking, and Darrel Miller
This translation is published and sold by permission of O’Reilly Media, Inc., which owns or controls all
rights to publish and sell the same.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane
z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie
ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji
zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Pliki z przykładami omawianymi w książce można znaleźć pod adresem:
ftp://ftp.helion.pl/przyklady/noapie.zip
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/noapie
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis treści
Wprowadzenie ................................................................................................................... 13
Wstęp ................................................................................................................................ 17
Dlaczego należy przeczytać tę książkę?
17
Co trzeba wiedzieć, aby jak najwięcej skorzystać z tej książki?
18
Jakie informacje zawiera ta książka?
19
Część I. Podstawy
......................................................................................................................19
Część II. Praktyczne programowanie API
.............................................................................20
Część III. Podstawowe zasady Web API
................................................................................20
Konwencje zastosowane w książce
20
Użycie przykładowych kodów
21
Podziękowania
22
Rozdział 1. Internet, World Wide Web i HTTP ........................................................................ 23
Architektura sieci
24
Zasób
...........................................................................................................................................25
URI
..............................................................................................................................................25
Cool URI
....................................................................................................................................26
Reprezentacja
.............................................................................................................................26
Typ danych
.................................................................................................................................27
HTTP
29
Wykraczamy poza HTTP 1.1
..................................................................................................29
Wymiana komunikatów HTTP
..............................................................................................30
Pośredniki
..................................................................................................................................32
Rodzaje pośredników
...............................................................................................................33
Metody HTTP
............................................................................................................................33
Nagłówki
....................................................................................................................................36
Kody stanu HTTP
.....................................................................................................................37
Negocjacja treści
........................................................................................................................38
Buforowanie
...............................................................................................................................38
Uwierzytelnianie
.......................................................................................................................42
3
Kup książkę
Poleć książkę
Schematy uwierzytelniania
......................................................................................................
42
Dodatkowe schematy uwierzytelniania
.................................................................................
43
Podsumowanie
44
Rozdział 2. Web API ............................................................................................................. 45
Co to jest Web API?
45
Co w kwestii usług sieciowych SOAP?
45
Korzenie Web API
46
Początek rewolucji Web API
46
Zwrócenie uwagi na sieć
47
Wskazówki dla Web API
47
Typy danych charakterystyczne dla domeny
48
Profile typów danych
49
Wiele reprezentacji
50
Style API
51
Model dojrzałości Richardsona
..............................................................................................
52
RPC (poziom 0 w modelu dojrzałości Richardsona)
...........................................................
52
Zasoby (poziom 1 w modelu dojrzałości Richardsona)
......................................................
54
Metody HTTP (poziom 2 w modelu dojrzałości Richardsona)
.........................................
56
Pokonanie przepaści na drodze ku API zorientowanemu na zasoby
................................
58
Hipermedia (poziom 3 w modelu dojrzałości Richardsona)
.............................................
58
REST
...........................................................................................................................................
63
Ograniczenia REST
..................................................................................................................
63
Podsumowanie
65
Rozdział 3. Podstawy ASP.NET Web API ................................................................................ 67
Najczęściej spotykane scenariusze
67
Pierwsza klasa programowania HTTP
..................................................................................
68
Jednakowe możliwości podczas programowania po stronie klienta i serwera
................
69
Elastyczna obsługa różnych formatów
..................................................................................
70
Nigdy więcej „tworzenia kodu z nawiasami ostrymi”
.........................................................
70
Możliwość stosowania testów jednostkowych
......................................................................
70
Wiele opcji w zakresie hostingu
.............................................................................................
71
Rozpoczęcie pracy z ASP.NET Web API
72
Nowy projekt Web API
75
Plik WebApiConfig.cs
..............................................................................................................
76
Plik ValuesController.cs
..........................................................................................................
78
„Witaj, Web API!”
79
Utworzenie usługi
.....................................................................................................................
79
Klient
..........................................................................................................................................
86
Host
............................................................................................................................................
86
Podsumowanie
87
4
Spis treści
Kup książkę
Poleć książkę
Rozdział 4. Architektura przetwarzania ................................................................................ 89
Warstwa hostingu
91
Warstwa potoku procedur obsługi komunikatów
93
Obsługa tras
...............................................................................................................................95
Warstwa obsługi kontrolera
96
Klasa bazowa ApiController
....................................................................................................97
Podsumowanie
103
Rozdział 5. Aplikacja ...........................................................................................................105
Dlaczego ewolucja?
106
Bariery na drodze ewolucji
...................................................................................................
107
Jaki jest koszt zmiany?
...........................................................................................................
108
Dlaczego po prostu nie wersja?
............................................................................................
110
Przystępujemy do pracy
........................................................................................................
113
Cele aplikacji
113
Cele
...........................................................................................................................................
113
Możliwości
..............................................................................................................................
114
Model informacji
114
Subdomeny
.............................................................................................................................
115
Powiązane zasoby
...................................................................................................................
116
Grupy atrybutów
....................................................................................................................
117
Kolekcje grup atrybutów
.......................................................................................................
117
Model informacji kontra typ danych
..................................................................................
118
Kolekcje zgłoszeń błędów
.....................................................................................................
119
Modele zasobów
119
Zasób główny
..........................................................................................................................
119
Zasoby wyszukiwania danych
..............................................................................................
120
Kolekcja zasobów
...................................................................................................................
120
Zasób elementu
......................................................................................................................
120
Podsumowanie
123
Rozdział 6. Projekt i wybór typu danych ..............................................................................125
Samoopisywanie się
125
Rodzaje kontraktów
126
Typy danych
126
Proste formaty
........................................................................................................................
126
Popularne formaty
.................................................................................................................
128
Nowe formaty
.........................................................................................................................
129
Typy hipermediów
.................................................................................................................
131
Eksplozja typów danych
........................................................................................................
132
Ogólne typy danych i profile
................................................................................................
132
Inne typy hipermediów
.........................................................................................................
136
Spis treści
5
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin