[1119 | Day62] RESTfulなインターフェース仕様

インタフェース仕様

ウェブAPIインタフェース仕様:安らか

2000年には、博士ロイフィールディングは、彼の博士論文ではソフトウェアアーキテクチャモデルのREST(のRepresentational State転送)スタイルを提案し、RESTは基本的にはすぐに標準になるために、複雑で面倒なSOAP、ウェブAPIを置き換えます。

その強力な、シンプルでRESTfulなは、親しみの機能は、最も人気のあるAPIの設計仕様となっています。

URLデザイン

例えば:https://api.oldboy.com/v2/users/?limit=3&search=fxyadela

操作の代表的な要求されたモード

一般的に、動作リソースに関連するCRUD、我々は要求CRUD操作を識別するための方法を提供します。

'''
https://api.baidu.com/books - get请求:获取所有书
https://api.baidu.com/books/1 - get请求:获取主键为1的书
https://api.baidu.com/books - post请求:新增一本书书
https://api.baidu.com/books/1 - put请求:整体修改主键为1的书
https://api.baidu.com/books/1 - patch请求:局部修改主键为1的书
https://api.baidu.com/books/1 - delete请求:删除主键为1的书
'''

ネットワークステータスコード

正常响应

  • 2xx応答ステータスコード
    • 200:一般要求
    • 201:成功を作成します

重定向响应

  • レスポンスのステータスコード300番台
    • 301:永続的なリダイレクト
    • 302:一時的なリダイレクト

客户端异常

  • 応答ステータスコードの4xx
    • 403:無許可要求
    • 404:要求パスが存在しません
    • 405:要求メソッドが存在しません

服务器异常

  • 5xxの応答ステータスコード
    • 500:サーバーの異常

応答結果

応答データは、ステータスコード、ステータス情報とデータ自体を持っています。

{
     "status":0,    //状态响应码
     "message":"ok",    //状态信息
     "results":[    //响应数据
     {
         "name":"肯德基(罗餐厅)",
         "location":{
             "lat":31.415354,
             "lng":121.357339
            },
         "address":"月罗路2380号",
         "province":"上海市",
         "city":"上海市",
         "area":"宝山区",
         "street_id":"339ed41ae1d6dc320a5cb37c",
         "telephone":"(021)56761006",
         "detail":1,
         "uid":"339ed41ae1d6dc320a5cb37c"
     }
     ...
     ]
}

おすすめ

転載: www.cnblogs.com/fxyadela/p/11891033.html