欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

RESTful是什么

這篇文章主要講解了“RESTful是什么”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“RESTful是什么”吧!

我們注重客戶(hù)提出的每個(gè)要求,我們充分考慮每一個(gè)細(xì)節(jié),我們積極的做好網(wǎng)站設(shè)計(jì)制作、網(wǎng)站設(shè)計(jì)服務(wù),我們努力開(kāi)拓更好的視野,通過(guò)不懈的努力,創(chuàng)新互聯(lián)建站贏得了業(yè)內(nèi)的良好聲譽(yù),這一切,也不斷的激勵(lì)著我們更好的服務(wù)客戶(hù)。 主要業(yè)務(wù):網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)站設(shè)計(jì),微信小程序定制開(kāi)發(fā),網(wǎng)站開(kāi)發(fā),技術(shù)開(kāi)發(fā)實(shí)力,DIV+CSS,PHP及ASP,ASP.Net,SQL數(shù)據(jù)庫(kù)的技術(shù)開(kāi)發(fā)工程師。

一.什么是RESTful 面向資源

簡(jiǎn)單的說(shuō):RESTful是一種架構(gòu)的規(guī)范與約束、原則,符合這種規(guī)范的架構(gòu)就是RESTful架構(gòu)。

先看REST是什么意思,英文Representational state transfer 表述性狀態(tài)轉(zhuǎn)移 其實(shí)就是對(duì) 資源 的表述性狀態(tài)轉(zhuǎn)移。

(什么是表述性:就是指客戶(hù)端請(qǐng)求一個(gè)資源,服務(wù)器拿到的這個(gè)資源,就是表述)

資源的地址 在web中就是URL (統(tǒng)一資源標(biāo)識(shí)符)

資源是REST系統(tǒng)的核心概念。 所有的設(shè)計(jì)都是以資源為中心

結(jié)合項(xiàng)目怎么識(shí)別資源

1.商品加入購(gòu)物車(chē) 購(gòu)物車(chē)

2.提交訂單 訂單

3.創(chuàng)建用戶(hù) 用戶(hù)

圍繞資源進(jìn)行 添加,獲取,修改,刪除,以及對(duì)符合特定條件的資源進(jìn)行列表操作 。針對(duì)資源設(shè)計(jì)接口

二.關(guān)于規(guī)范與約束有哪些?

RESTful 架構(gòu)的核心規(guī)范與約束:統(tǒng)一接口

分為四個(gè)子約束:

1.每個(gè)資源都擁有一個(gè)資源標(biāo)識(shí),每個(gè)資源的資源標(biāo)識(shí)可以用來(lái)唯一地標(biāo)明該資源

2.消息的自描述性

3.資源的自描述性。

4.HATEOAS Hypermedia As The Engine Of Application State(超媒體作為應(yīng)用狀態(tài)引擎)

即客戶(hù)只可以通過(guò)服務(wù)端所返回各結(jié)果中所包含的信息來(lái)得到下一步操作所需要的信息,如到底是向哪個(gè)URL發(fā)送請(qǐng)求等。也就是說(shuō),一個(gè)典型的REST服務(wù)不需要額外的文檔標(biāo)示通過(guò)哪些URL訪問(wèn)特定類(lèi)型的資源,而是通過(guò)服務(wù)端返回的響應(yīng)來(lái)標(biāo)示到底能在該資源上執(zhí)行什么樣的操作

目的:實(shí)現(xiàn)客戶(hù)端無(wú)需借助任何文檔即能調(diào)用到所有的服務(wù)器資源

 RESTful是什么

三、資源的URL設(shè)計(jì)

1.通過(guò)URL來(lái)表示資源

資源分為主資源與子資源

因?yàn)橹髻Y源是一類(lèi)獨(dú)立的資源 所以主資源應(yīng)直接放在相對(duì)路徑下:例如

若要表示主資源的實(shí)例:如果實(shí)例的ID=1,則這樣表示: /goods/1

子資源:

一個(gè)實(shí)例的子資源可能是一個(gè)集合也可能是一個(gè)單一的子資源

子資源為圖片集合:/goods/1/pictures

子資源為商品折扣的單子子資源:/goods/1/discount

2.單數(shù) vs. 復(fù)數(shù)

獲取用戶(hù)1的信息,哪種方式更符合RESTful?

/api/users/1

/api/user/1

3.相對(duì)路徑 vs. 請(qǐng)求參數(shù)

極光的RESTful API:

獲取用戶(hù)信息 GET /v1/users/{username} 參數(shù)放在路徑中

VS

獲取用戶(hù)信息 GET /v1/users?username=xxxxx 拼接的方式

獲取應(yīng)用管理員列表 GET /v1/admins?start={start}&count={count} ?后拼接參數(shù)的方式:這種方式一般作為過(guò)濾資源

4.使用合適的動(dòng)詞 get delete put post

選擇請(qǐng)求接口的方式: get delete

PUT 在服務(wù)器更新資源(客戶(hù)端提供改變后的完整資源)。

POST 在服務(wù)器新建一個(gè)資源

5.使用標(biāo)準(zhǔn)的狀態(tài)碼

GET

  • 安全且冪等

  • 獲取表示

  • 變更時(shí)獲取表示(緩存)

  • 200(OK) - 表示已在響應(yīng)中發(fā)出

  • 204(無(wú)內(nèi)容) - 資源有空表示

  • 301(Moved Permanently) - 資源的URI已被更新

  • 303(See Other) - 其他(如,負(fù)載均衡

  • 304(not modified)- 資源未更改(緩存)

  • 400 (bad request)- 指代壞請(qǐng)求(如,參數(shù)錯(cuò)誤)

  • 404 (not found)- 資源不存在

  • 406 (not acceptable)- 服務(wù)端不支持所需表示

  • 500 (internal server error)- 通用錯(cuò)誤響應(yīng)

  • 503 (Service Unavailable)- 服務(wù)端當(dāng)前無(wú)法處理請(qǐng)求

  • POST

    PUT

    DELETE

    • 301 (Moved Permanently)- 資源的URI已更改

    • 303 (See Other)- 其他,如負(fù)載均衡

    • 400 (bad request)- 指代壞請(qǐng)求

    • 404 (not found)- 資源不存在

    • 409 (conflict)- 通用沖突

    • 500 (internal server error)- 通用錯(cuò)誤響應(yīng)

    • 503 (Service Unavailable)- 服務(wù)端當(dāng)前無(wú)法處理請(qǐng)求

    • 200 (OK)- 資源已被刪除

    • 不安全但冪等

    • 刪除資源

    • 201 (created)- 如果新資源被創(chuàng)建

    • 301(Moved Permanently)- 資源的URI已更改

    • 303 (See Other)- 其他(如,負(fù)載均衡)

    • 400 (bad request)- 指代壞請(qǐng)求

    • 404 (not found)- 資源不存在

    • 406 (not acceptable)- 服務(wù)端不支持所需表示

    • 409 (conflict)- 通用沖突

    • 412 (Precondition Failed)- 前置條件失敗(如執(zhí)行條件更新時(shí)的沖突)

    • 415 (unsupported media type)- 接受到的表示不受支持

    • 500 (internal server error)- 通用錯(cuò)誤響應(yīng)

    • 503 (Service Unavailable)- 服務(wù)當(dāng)前無(wú)法處理請(qǐng)求

    • 200 (OK)- 如果已存在資源被更改

    • 不安全但冪等

    • 用客戶(hù)端管理的實(shí)例號(hào)創(chuàng)建一個(gè)資源

    • 通過(guò)替換的方式更新資源

    • 如果未被修改,則更新資源(樂(lè)觀鎖)

    • 201(created)- 如果新資源被創(chuàng)建

    • 202(accepted)- 已接受處理請(qǐng)求但尚未完成(異步處理)

    • 301(Moved Permanently)- 資源的URI被更新

    • 303(See Other)- 其他(如,負(fù)載均衡)

    • 400(bad request)- 指代壞請(qǐng)求

    • 404 (not found)- 資源不存在

    • 406 (not acceptable)- 服務(wù)端不支持所需表示

    • 409 (conflict)- 通用沖突

    • 412 (Precondition Failed)- 前置條件失敗(如執(zhí)行條件更新時(shí)的沖突)

    • 415 (unsupported media type)- 接受到的表示不受支持

    • 500 (internal server error)- 通用錯(cuò)誤響應(yīng)

    • 503 (Service Unavailable)- 服務(wù)當(dāng)前無(wú)法處理請(qǐng)求

    • 200(OK)- 如果現(xiàn)有資源已被更改

    • 不安全且不冪等

    • 使用服務(wù)端管理的(自動(dòng)產(chǎn)生)的實(shí)例號(hào)創(chuàng)建資源

    • 創(chuàng)建子資源

    • 部分更新資源

    • 如果沒(méi)有被修改,則不過(guò)更新資源(樂(lè)觀鎖)

  • 6.選擇適當(dāng)?shù)谋硎窘Y(jié)構(gòu)

    json   xml

感謝各位的閱讀,以上就是“RESTful是什么”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)RESTful是什么這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

文章題目:RESTful是什么
文章來(lái)源:http://www.chinadenli.net/article26/jdjecg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站軟件開(kāi)發(fā)網(wǎng)站設(shè)計(jì)公司面包屑導(dǎo)航網(wǎng)站導(dǎo)航Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名