RESTful瑙勮寖
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RESTful瑙勮寖相关的知识,希望对你有一定的参考价值。
鏍囩锛?a href='http://www.mamicode.com/so/1/%e7%bb%93%e6%9e%9c' title='缁撴灉'>缁撴灉
author 鏀瑰彉 澶氭 澶勭悊 offset 鐘舵€佺爜 toc 璁板綍•API涓庣敤鎴风殑閫氫俊鍗忚锛屾€绘槸浣跨敤HTTPs鍗忚:https姣攈ttp瀹夊叏
•鍩熷悕
?https://api.example.com 灏介噺灏咥PI閮ㄧ讲鍦ㄤ笓鐢ㄥ煙鍚嶏紙浼氬瓨鍦ㄨ法鍩熼棶棰橈級 ?https://example.org/api/ API寰堢畝鍗? •鐗堟湰
?URL锛屽锛歨ttps://api.example.com/v1/ ?璇锋眰澶? 璺ㄥ煙鏃讹紝寮曞彂鍙戦€佸娆¤姹? •璺緞锛岃缃戠粶涓婁换浣曚笢瑗块兘鏄祫婧愶紝鍧囦娇鐢ㄥ悕璇嶈〃绀猴紙鍙鏁帮級
?https://api.example.com/v1/zoos ?https://api.example.com/v1/animals ?https://api.example.com/v1/employees •method
?GET 锛氫粠鏈嶅姟鍣ㄥ彇鍑鸿祫婧愶紙涓€椤规垨澶氶」锛? ?POST 锛氬湪鏈嶅姟鍣ㄦ柊寤轰竴涓祫婧? ?PUT 锛氬湪鏈嶅姟鍣ㄦ洿鏂拌祫婧愶紙瀹㈡埛绔彁渚涙敼鍙樺悗鐨勫畬鏁磋祫婧愶級 ?PATCH 锛氬湪鏈嶅姟鍣ㄦ洿鏂拌祫婧愶紙瀹㈡埛绔彁渚涙敼鍙樼殑灞炴€э級 ?DELETE 锛氫粠鏈嶅姟鍣ㄥ垹闄よ祫婧? •杩囨护锛岄€氳繃鍦╱rl涓婁紶鍙傜殑褰㈠紡浼犻€掓悳绱㈡潯浠?
?https://api.example.com/v1/zoos?limit=10锛氭寚瀹氳繑鍥炶褰曠殑鏁伴噺 ?https://api.example.com/v1/zoos?offset=10锛氭寚瀹氳繑鍥炶褰曠殑寮€濮嬩綅缃? ?https://api.example.com/v1/zoos?page=2&per_page=100锛氭寚瀹氱鍑犻〉锛屼互鍙婃瘡椤电殑璁板綍鏁? ?https://api.example.com/v1/zoos?sortby=name&order=asc锛氭寚瀹氳繑鍥炵粨鏋滄寜鐓у摢涓睘鎬ф帓搴忥紝浠ュ強鎺掑簭椤哄簭 ?https://api.example.com/v1/zoos?animal_type_id=1锛氭寚瀹氱瓫閫夋潯浠? •鐘舵€佺爜
200 OK - [GET]锛氭湇鍔″櫒鎴愬姛杩斿洖鐢ㄦ埛璇锋眰鐨勬暟鎹紝璇ユ搷浣滄槸骞傜瓑鐨勶紙Idempotent锛夈€? 201 CREATED - [POST/PUT/PATCH]锛氱敤鎴锋柊寤烘垨淇敼鏁版嵁鎴愬姛銆? 202 Accepted - [*]锛氳〃绀轰竴涓姹傚凡缁忚繘鍏ュ悗鍙版帓闃燂紙寮傛浠诲姟锛? 204 NO CONTENT - [DELETE]锛氱敤鎴峰垹闄ゆ暟鎹垚鍔熴€? 400 INVALID REQUEST - [POST/PUT/PATCH]锛氱敤鎴峰彂鍑虹殑璇锋眰鏈夐敊璇紝鏈嶅姟鍣ㄦ病鏈夎繘琛屾柊寤烘垨淇敼鏁版嵁鐨勬搷浣滐紝璇ユ搷浣滄槸骞傜瓑鐨勩€? 401 Unauthorized - [*]锛氳〃绀虹敤鎴锋病鏈夋潈闄愶紙浠ょ墝銆佺敤鎴峰悕銆佸瘑鐮侀敊璇級銆? 403 Forbidden - [*] 琛ㄧず鐢ㄦ埛寰楀埌鎺堟潈锛堜笌401閿欒鐩稿锛夛紝浣嗘槸璁块棶鏄绂佹鐨勩€? 404 NOT FOUND - [*]锛氱敤鎴峰彂鍑虹殑璇锋眰閽堝鐨勬槸涓嶅瓨鍦ㄧ殑璁板綍锛屾湇鍔″櫒娌℃湁杩涜鎿嶄綔锛岃鎿嶄綔鏄箓绛夌殑銆? 406 Not Acceptable - [GET]锛氱敤鎴疯姹傜殑鏍煎紡涓嶅彲寰楋紙姣斿鐢ㄦ埛璇锋眰JSON鏍煎紡锛屼絾鏄彧鏈塜ML鏍煎紡锛夈€? 410 Gone -[GET]锛氱敤鎴疯姹傜殑璧勬簮琚案涔呭垹闄わ紝涓斾笉浼氬啀寰楀埌鐨勩€? 422 Unprocesable entity - [POST/PUT/PATCH] 褰撳垱寤轰竴涓璞℃椂锛屽彂鐢熶竴涓獙璇侀敊璇€? 500 INTERNAL SERVER ERROR - [*]锛氭湇鍔″櫒鍙戠敓閿欒锛岀敤鎴峰皢鏃犳硶鍒ゆ柇鍙戝嚭鐨勮姹傛槸鍚︽垚鍔熴€? 鏇村鐪嬭繖閲岋細http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html •閿欒澶勭悊锛屽簲杩斿洖閿欒淇℃伅锛宔rror褰撳仛key銆?br />
{
error:
"Invalid API key"
}
- 杩斿洖缁撴灉锛岄拡瀵逛笉鍚屾搷浣滐紝鏈嶅姟鍣ㄥ悜鐢ㄦ埛杩斿洖鐨勭粨鏋滃簲璇ョ鍚堜互涓嬭鑼冦€?/li>
GET
/
collection锛氳繑鍥炶祫婧愬璞$殑鍒楄〃锛堟暟缁勶級
GET
/
collection
/
resource锛氳繑鍥炲崟涓祫婧愬璞?/code>
POST
/
collection锛氳繑鍥炴柊鐢熸垚鐨勮祫婧愬璞?/code>
PUT
/
collection
/
resource锛氳繑鍥炲畬鏁寸殑璧勬簮瀵硅薄
PATCH
/
collection
/
resource锛氳繑鍥炲畬鏁寸殑璧勬簮瀵硅薄
DELETE
/
collection
/
resource锛氳繑鍥炰竴涓┖鏂囨。
- Hypermedia API锛孯ESTful API鏈€濂藉仛鍒癏ypermedia锛屽嵆杩斿洖缁撴灉涓彁渚涢摼鎺ワ紝杩炲悜鍏朵粬API鏂规硶锛屼娇寰楃敤鎴蜂笉鏌ユ枃妗o紝涔熺煡閬撲笅涓€姝ュ簲璇ュ仛浠€涔堛€?/li>
{
status:100
msg:鎴愬姛
url:127.0.0.1/books/1
}
鏍稿績:杩斿洖缁撴灉涓彁渚涢摼鎺?/pre>
以上是关于RESTful瑙勮寖的主要内容,如果未能解决你的问题,请参考以下文章
鑵捐 Git 瑙勮寖鍑虹倝锛屽啓缁欏紑鍙戣€呯殑 Git 鎸囧崡!
鏍规嵁 Promise/A+ 鍜?ES6 瑙勮寖锛屽疄鐜?Promise 婧愮爜锛堥檮璇︾粏娉ㄩ噴鍜屾祴璇曪級
闈㈣瘯蹇呴棶鐨?JVM 杩愯鏃舵暟鎹尯锛屼綘鎳備簡鍚楋紵