锘??xml version="1.0" encoding="utf-8" standalone="yes"?> <request line> <headers> <blank line> [<request-body>] 璇鋒眰涓紝絎竴琛屽繀欏繪槸涓涓姹傝錛?/span>request line璧勬簮浠ュ強(qiáng)浣跨敤鐨?/span>HTTP錛夊皬鑺傦紝鐢ㄦ潵璇存槑鏈嶅姟鍣ㄨ浣跨敤鐨勯檮鍔犱俊鎭傚湪棣栭儴涔嬪悗鏄竴涓┖琛岋紝鍐嶆涔嬪悗鍙互娣誨姞浠繪剰鐨勫叾浠栨暟鎹?/span>[錛?/span>]2涓?/span>POSTHTTP 鍜?/span> POSTAjax GET鏂規(guī)硶鏈変互涓嬪尯鍒細(xì) 錛?錛?span style="font: 7pt 'Times New Roman'">
Architectural Styles and the Design of Network-based Software Architectures銆by銆Roy Thomas Fielding
銆銆銆銆銆銆Doctor of Philosophy in Information and Computer Science
銆銆銆銆銆銆University of California, Irvine, 2000
銆銆銆銆銆銆Professor Richard N. Taylor, Chair
銆銆The World Wide Web has succeeded in large part because its software architecture has
been designed to meet the needs of an Internet-scale distributed hypermedia system. The
Web has been iteratively developed over the past ten years through a series of
modifications to the standards that define its architecture. In order to identify those aspects
of the Web that needed improvement and avoid undesirable modifications, a model for the
modern Web architecture was needed to guide its design, definition, and deployment.
銆銆Software architecture research investigates methods for determining how best to
partition a system, how components identify and communicate with each other, how
information is communicated, how elements of a system can evolve independently, and
how all of the above can be described using formal and informal notations. My work is
motivated by the desire to understand and evaluate the architectural design of networkbased
application software through principled use of architectural constraints, thereby
obtaining the functional, performance, and social properties desired of an architecture. An
architectural style is a named, coordinated set of architectural constraints.
銆銆This dissertation defines a framework for understanding software architecture via
architectural styles and demonstrates how styles can be used to guide the architectural
design of network-based application software. A survey of architectural styles for
network-based applications is used to classify styles according to the architectural
properties they induce on an architecture for distributed hypermedia. I then introduce the
Representational State Transfer (REST) architectural style and describe how REST has
been used to guide the design and development of the architecture for the modern Web.
銆銆REST emphasizes scalability of component interactions, generality of interfaces,
independent deployment of components, and intermediary components to reduce
interaction latency, enforce security, and encapsulate legacy systems. I describe the
software engineering principles guiding REST and the interaction constraints chosen to
retain those principles, contrasting them to the constraints of other architectural styles.
Finally, I describe the lessons learned from applying REST to the design of the Hypertext
Transfer Protocol and Uniform Resource Identifier standards, and from their subsequent
deployment in Web client and server software.
Roy Thomas Fielding鍗氬+璁烘枃鑻辨枃鐗堟湰銆http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm
]]>
GET鏂規(guī)硶瀹炰緥錛?br />
Host: www.wrox.com User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.6) Gecko/20050225 Firefox/1.0.1 Connection: Keep-Alive POST / Host: www.wrox.com User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv: Gecko/20050225 Firefox/ Content-Type: application/x-www-form-urlencoded Content-Length: 40 Connection: Keep-Alive name=Professional%20Ajax&publisher=Wiley
GETGET /books/?name=Professional%20Ajax HTTP/1.1
錛堟澶勭┖涓琛岋級(jí)
錛夊浜庤〃鍗曠殑鎻愪氦鏂瑰紡錛?/span>Request.QueryStringGetPostRequest.Form3GetGetGetPost浜岋紟HTTP1鍝嶅簲鏍煎紡錛?/span>
<status line>
<headers>
<blank line>
[<response-body>]
鍖哄埆鍦ㄤ簬絎竴琛屼腑鐢ㄧ姸鎬?nobr oncontextmenu="return false;" onmousemove="kwM(1);" id="key1" onmouseover="kwE(event,1, this);" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="return kwC();" onmouseout="kwL(event, this);" target="_blank">淇℃伅浠f浛浜?jiǎn)璇锋眰淇℃伅銆?span style="color: red">鐘舵佽錛?/span>status line HTTP鍝嶅簲瀹炰緥錛?/span>
HTTP/1.1 200 OK Date: Sat, 31 Dec 2005 23:59:59 GMT Content-Type: text/html;charset=ISO-8859-1 Content-Length: 122 錛?/span>html錛?/span> 錛?/span>head錛?/span> 錛?/span>title錛?/span>Wrox Homepage錛?/span>/title錛?/span> 錛?/span>/head錛?/span> 錛?/span>body錛?/span> 錛?/span>!-- body goes here --錛?/span> 錛?/span>/body錛?/span> 錛?/span>/html錛?/span>
璇ヨ祫婧愬湪涓婃璇鋒眰涔嬪悗娌℃湁浠諱綍淇敼銆傝繖閫氬父鐢ㄤ簬嫻忚鍣ㄧ殑緙撳瓨鏈哄埗銆?/span>
瀹㈡埛绔湭鑳借幏寰楁巿鏉冦傝繖閫氬父鏄湪401鍦ㄦ寚瀹氱殑浣嶇疆涓嶅瓨鍦ㄦ墍鐢寵鐨?nobr oncontextmenu="return false;" onmousemove="kwM(7);" id="key5" onmouseover="kwE(event,7, this);" style="color: #6600ff; border-bottom: 0px dotted; background-color: transparent; text-decoration: underline" onclick="return kwC();" onmouseout="kwL(event, this);" target="_blank">璧勬簮銆?/span>