契約主要分為兩大部分,請求(Request)
與回覆(Response)
為了讓下達的指示更為明確,每部分都有更為細節的說明
首先, 請求的內容會如同以下的形式
請H協助執行的動作 要去什麼地方完成這次的請求 契約的版本
注意事項1: 注意事項1說明
注意事項2: 注意事項2說明
注意事項3: 注意事項3說明
...
(空一行)
可能需要攜帶的資料
H可能需要採買食材(GET)或幫忙申請補助(POST),所以請H協助執行的動作會有好幾種。
此外,我本身有些習慣去的地方,為了明確地告知要去什麼地方完成這次的請求,使用URL
來表示,不過要注意的是呈現的方式有些需要注意的地方,等我們之後遇到會再說明。
接著,執行請求時可能會需要一些更詳細的說明,這部分就拆解為多個注意事項表示,也可稱為Header
。
最後,申請補助時可能需要帶相關的文件過去,要特別註明要帶什麼過去,她才不會被搞混。
以下就是請她幫我到書店買書的範例
GET
是請H協助執行的動作/products/001068818
是請H到編號001068818的地方取書Host
到 Accept-Language
都是完成這次請求需要注意的事項GET /products/0010688181 HTTP/1.1
Host: www.books.com.tw
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Referer: http://search.books.com.tw/search/query/key/PHP/cat/all
Accept-Encoding: gzip, deflate, sdch
Accept-Language: zh-TW,zh;q=0.8,en-US;q=0.6,en;q=0.4