-
Notifications
You must be signed in to change notification settings - Fork 0
/
web_services.tex
100 lines (91 loc) · 2.51 KB
/
web_services.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
\section{Web services}
\centeredFrame{Web services}
\centeredFrame{what exactly are web services?}
\centeredFrame{API for web applications}
\itemizedFrame{some examples:}{
\item weather
\item sport results
\item stock market
}
\centeredFrame{a bit of history}
\centeredFrame{Remote Procedure Call}
\centeredFrame{XML-RPC}
\centeredFrame{uses XML over HTTP}
\inputFrame{XML RPC sample request}{\tiny}{files/xml_rpc_request}
\inputFrame{XML RPC sample response}{\tiny}{files/xml_rpc_response}
\centeredFrame{this evolved into}
\centeredFrame{SOAP}
\centeredFrame{\alert{Simple} Object Access Protocol}
\itemizedFrame{this acronym was dropped with version 1.2 of the standard}{
\item it was confused with SOA
\item it’s not that simple after all
}
\centeredFrame{uses XML over HTTP}
\frame{
\frametitle{SOAP sample request}
\scriptsize \input {files/soap_request}
}
\frame{
\frametitle{SOAP sample response}
\scriptsize \input {files/soap_response}
}
\centeredFrame{services are defined using\\Web Services Description Language\\(WSDL)}
\frame{
\frametitle{WSDL sample}
\tiny \input {files/wsdl_begin}
}
\centeredFrame{... about 100 lines of XML later ...}
\frame{
\frametitle{WSDL sample}
\tiny \input {files/wsdl_end}
}
\itemizedFrame{}{
\item lets tools create client APIs
\item client developers see methods with parameters
}
\itemizedFrame{WS-* specifications}{
\item WS-Addressing
\item WS-Security
\item WS-Trust
\item WS-SecureConversation
\item WS-ReliableMessaging
\item WS-AtomicTransaction
\item WS-Coordination
\item WS-Policy
\item WS-MetadataExchange
\item ...
}
\imageFrame{images/WS-Standards-Poster.jpg}
\centeredFrame{service oriented design}
\itemizedFrame{}{
\item UserManager
\begin{itemize}
\item createUser(u:User)
\item getUserDetails(id:ID)
\end{itemize}
\item StatusManager
\begin{itemize}
\item submitStatus(u\_id:ID, s:Status)
\item getStatus(u\_id:ID)
\end{itemize}
}
\itemizedFrame{Cons of SOAP services:}{
\item complex
\item strong typing
\item XML is not necessarily the best data format for the web
\item non-uniform interface
\item uses HTTP POST only
}
\centeredFrame{not everyone needs enterprisey and complex web services}
\centeredFrame{you don't have to use SOAP}
\centeredFrame{others don't}
\imageFrame{images/dirty-harry.jpg}
\itemizedFrame{}{
\item Amazon Web Services - provides both
\begin{itemize}
\item 20\% uses SOAP
\item 80\% uses REST
\end{itemize}
\item Google Search API - deprecated SOAP in favor of REST
\item Yahoo API - uses REST only
}