我正在实现一个基于 json-rpc 的网络服务。
对于身份验证,我使用 HTTP 基本身份验证。
根据 json-rpc 文档,此类错误没有错误代码。 https://www.jsonrpc.org/specification#error_object
我计划对无效授权案例做出如下回应,
{"jsonrpc": "2.0", "error": {"code": 401, "message": "Invalid Authentication"}, "id": null}
但我觉得这不是一个正确的实现方式。从 -32768 到 -32000 定义的所有 json-rpc 错误代码。代码 401 不在此范围内(因为它是一个 http 状态代码)。但是也没有适合范围内的此类错误的代码
此类实现的最佳做法是什么。
最佳答案
根据 json-rpc 文档:
从 -32768 到 -32000 的错误代码保留给预定义错误。此范围内的任何代码都保留供将来使用
从 -32000 到 -32099 的代码保留用于实现定义的服务器错误。
所以我决定使用 -32001 来处理身份验证错误。和 -32002 用于授权错误。
https://www.jsonrpc.org/specification#error_object
https://stackoverflow.com/questions/56326469/
相关文章:
visual-studio-code - vscode 给出的建议的部分自动完成?
google-cloud-build - Google Cloud Build - Github 触
kotlin - 在 IntelliJ IDEA 中导入 kotlinx 是不可能的
php - Docker 从容器内部复制 Composer 供应商
reactjs - 在 NavigationOptions 中调用 setstate React n
c# - 如何获取在 asp.net 中使用我的 web api 的请求 url?
javascript - WebPack + WebExtensions/Chrome 扩展 - g
r - 在 ggplotly 散点图上添加辅助 x 和 y 轴