Re: [問題] restful api 設計
1.
每種語言大都有基本的http request method可以用,所以常用的POST, GET, PUT, DELETE是沒什麼問題的。
2.
我們的做法是登入時丟id & password去server,然後會回傳一組token,之後每個request只要帶這個token來驗就好了。
如果怕每次request都要驗,太耗DB resource的話,就擋一層redis/memcached吧,操作memory比操作硬碟要快多了。
3.
大部分的method都支援query string,而body在常用的method只支援POST, PUT, PATCH。(到底其他method什麼時候才要支援啦 orz)
另外推薦用postman/paw等工具來做測試。
※ 引述《swallowcc (罹患重度能年病的燕叔)》之銘言:
: 最近在研究restful api的設計,有幾個疑問想請教一下大家,
: 新手上路,可能問題有些淺,還請多見諒。
: 1, 翻了一些文章,一般推薦是會使用 post/get/put/delete 去區分使用者動作,
: 不過像是 php 之類的呼叫 api 的時候,因為語言本身沒有支援 put/delete
: 那實務上,通常是不去管這些,讓呼叫的一方自行去想辦法?
: 或者也會幫他們設計一些適用的方式?
: 2, 另外 authentication 這個部分,
: 是把 account/password base64 加鹽後放進 header 透過 https 傳遞到 server 端,
: 不過這樣的做法,不就每次都要query一次, server就得去db去確認身份嗎?
: 實務上有沒有什麼比較長效性的認證方式,不用每次都要去 query,
: 或者有其他推薦的作法/keyword呢?
: 3, 目前是使用 httpClient 去測試 api,
: 不過put沒辦法傳資料過去,也因為之前沒使用過put,不太清楚資料傳遞的方式為何。
: 參照 HttpPost 的寫法好像也不對,數據傳不過去。
: 參照 HttpGet 的寫法,雖然值接在 url 後面傳遞是可以傳過去了,
: 但不曉得這樣是不是正確的方法。
: 然後直接用 html 把 form method 設定成 put 也不支援這樣的寫法 囧rz
: 所以想問一下,HttpPut的傳遞方式是否跟GET相同,是附在 url 後方即可?
: 以上問題還煩請知道的前輩教導一下, 感恩<(_ _)>
-----
Sent from JPTT on my Asus PadFone 2.
--
雜七雜八的kewang部落格 http://kewang.tw
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.73.99.168
※ 文章網址: https://www.ptt.cc/bbs/java/M.1433849714.A.A38.html
推
06/09 20:00, , 1F
06/09 20:00, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
java 近期熱門文章
PTT數位生活區 即時熱門文章