ホームページ  >  に質問  >  本文

php - 关于restful的一点疑问

关于restful,tp3.2手册里的描述感觉挺直白明了的,如下

作用                    传统模式                    REST模式 
列举出所有的用户         GET /users/list            GET /users 
列出ID为1的用户信息      GET /users/show/id/1       GET /users/1 
插入一个新的用户         POST /users/add            POST /users 
更新ID为1的用户信息      POST /users/mdy/id/1       PUT /users/1 
删除ID为1的用户         POST /users/delete/id/1     DELETE /users/1 

get方法好理解,就是判断参数进行不同的操作,比如上面的是要所有用户还是单个用户信息,通过是否有id来判断,这点没问题,但是我现在的疑问是,其他的比如更新操作的呢,如果我有两个接口,一个是修改用户个人信息,一个是仅修改用户手机,两个都是修改用户信息,修改个人信息可以用PUT /users/1 ,但是修改用户手机呢,我是要多传入一个参数比如PUT /users/1/2来根据参数来进行不同的修改操作?还是再另外新建一个控制器比如PUT /usersPhone/1这样?如果是后者的话也太麻烦了吧?

为情所困为情所困2736日前454

全員に返信(4)返信します

  • 我想大声告诉你

    我想大声告诉你2017-05-16 13:05:34

    本当のことを言ってください。これは決して安静な設計原則ではありません。最初にパス内に動詞があってはなりません...
    put は本体を持つことができるため、本体内に配置できます。

    返事
    0
  • 巴扎黑

    巴扎黑2017-05-16 13:05:34

    POST の本文はパラメータを取ることができます。

    例えば

    を持ってきた場合 リーリー

    このパラメータを使用すると、携帯電話番号を変更する必要があることをバックグラウンドで知ることができます。

    返事
    0
  • ringa_lee

    ringa_lee2017-05-16 13:05:34

    PUT /users/1 を通じて個人情報を変更できます。1 はユーザーの ID に対応し、ユーザーの携帯電話は PUT /users/1 のユーザー情報のフィールドです。変更する必要があります。変更するには、json を介して渡す必要があります

    返事
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-16 13:05:34

    RESTful モード:
    http(s)://server.com/app-name/{version}/{domain}/{rest-convention}
    ここで、{version} は API のバージョン情報を表します。 {domain} は、技術的な理由 (例: セキュリティ - 指定したユーザーにこの領域へのアクセスを許可する) またはビジネス上の理由を定義するために使用できる領域です。 (例: 同じ関数が同じプレフィックスの下にあります。)
    {rest-convention} は、このドメイン内の合意された REST インターフェースのセットを表します。

    REST インターフェイス仕様:
    http://www.coderli.com/transl...

    返事
    0
  • キャンセル返事