我使用 go-swagger 創(chuàng)建了一個(gè) REST API 服務(wù)器,并為一些端點(diǎn)添加了不記名令牌安全性。根據(jù)文檔,令牌驗(yàn)證方法應(yīng)該具有類似func(string) (interface{}, error).如果傳遞的承載令牌無效,令牌驗(yàn)證方法將返回錯(cuò)誤。這導(dǎo)致對(duì)請(qǐng)求者的 500 個(gè)響應(yīng)帶有 JSON 響應(yīng)正文:{ "code": 500, "message": "Token is expired"}但是,作為標(biāo)準(zhǔn),我如何使用代碼 401 做出此響應(yīng)。注意:可以在https://stackoverflow.com/a/60738107/16087692找到類似的 Java 討論,有沒有辦法實(shí)現(xiàn)這個(gè) Go?
1 回答

一只萌萌小番薯
TA貢獻(xiàn)1795條經(jīng)驗(yàn) 獲得超7個(gè)贊
我沒有大搖大擺的經(jīng)驗(yàn),但偶然發(fā)現(xiàn)了這個(gè)問題。答案在示例中: https ://github.com/go-swagger/go-swagger/tree/master/examples/authentication
該示例顯示該函數(shù)返回一個(gè):
errors.New(401, "incorrect api key auth")
這是包中的錯(cuò)誤:“github.com/go-openapi/errors”,您可以在其中傳入 http 狀態(tài)代碼。
- 1 回答
- 0 關(guān)注
- 186 瀏覽
添加回答
舉報(bào)
0/150
提交
取消