鍍金池/ 問答/Java  PHP/ 做API接口,為什么access_token要放在Header頭里傳遞?

做API接口,為什么access_token要放在Header頭里傳遞?

和使用post傳比,有什么好處呢?

另外,token每次登錄都會(huì)改變,那么多端登錄是怎么實(shí)現(xiàn)的?

回答
編輯回答
嘟尛嘴

token生成后,每個(gè)請求都需要帶上的。
但沒有人規(guī)定,所有請求都是用post方法,比如RESTFul,不同的場景用不同的方法,不用header的話,客戶端和服務(wù)端的處理都很麻煩。

但這也不是絕對,早些年做移動(dòng)互聯(lián)網(wǎng)的時(shí)候,某些地區(qū)的移動(dòng)網(wǎng)關(guān)經(jīng)常會(huì)過濾或改寫header,這會(huì)帶來一些麻煩,如果真有碰到這種情況,就要想其它方式了。

2018年5月24日 05:15
編輯回答
神經(jīng)質(zhì)

只要你請求的時(shí)候又令牌就行了,這個(gè)令牌對應(yīng)用戶的身份,在后端處理的時(shí)候獲取到這個(gè)token,根據(jù)token獲取用戶信息,好比session和cookie,原理是一樣的!

2018年7月29日 00:57
編輯回答
耍太極

沒什么特別的好處吧,個(gè)人習(xí)慣感覺。
多端登錄,那只需要一個(gè)用戶可以有多個(gè)token就是了

2017年3月31日 21:23
編輯回答
陪我終

沒有規(guī)定不能用post,個(gè)人感覺 access_token 放在 Header 里會(huì)方便一些吧。
使用POST的話,難道所有API請求都是POST方法?

要實(shí)現(xiàn)多端登錄,可以每個(gè)用戶對應(yīng)多個(gè) access_token ,再在 access_token 表中加一個(gè)字段 來區(qū)分不同的登錄設(shè)備。

2017年12月18日 13:08
編輯回答
心上人

問題1,封裝啊,客戶端調(diào)用接口會(huì)把token封裝進(jìn)head
問題2,多端登錄,只要在token表里加個(gè)app-type字段就可以了,一個(gè)終端,一個(gè)token互不影響

2017年4月29日 15:26
編輯回答
莓森
    1. 如果是OAuth2, 使用 Header傳遞token是屬于規(guī)范的一種,Header中有一個(gè)Authorization頭專門用于存放認(rèn)證信息
    1. 每一次登錄,會(huì)生成一個(gè)新的Token, 此時(shí)舊的token并不會(huì)立即失效(取決于該token生成時(shí),設(shè)置的失效時(shí)間)

參考資料:

2017年4月30日 07:37