我正在设计一个 RESTful API,其中一些调用是通过 HTTP 公开的,而另一些则需要 API key 和通过 HTTPS 加密。如果将 HTTP 请求发送到其中一个私有(private)资源,我正在考虑应该发送什么响应代码。到目前为止,唯一跳出来的是 412 - Precondition Failed,但标准表明前提条件是由请求者而不是服务器强加的。
对于这种情况是否有适当的响应代码,还是我只需要让步并执行 400?
最佳答案
我不能说这是否被 HTTP 客户端广泛接受,但严格来说 RFC,服务器应该响应:
HTTP/1.1 426 Upgrade Required
Upgrade: TLS/1.0, HTTP/1.1
Connection: Upgrade
关于http - 为需要 SSL/TLS 的请求发送的正确 HTTP 响应是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2554778/