对不支持的协议(例如HTTP / HTTPS)进行适当的RESTful响应?

时间:2014-01-16 14:50:03

标签: api rest response httpresponse

我正在编写一个RESTful API服务,它只能通过HTTPS协议工作。如果请求是通过HTTP发送的,应该返回什么样的响应代码?

2 个答案:

答案 0 :(得分:1)

“301 Moved Permanently”,服务器将客户端从 http 重定向到 https。这是最常用的模式,我建议您在服务器级别实现。这取决于您拥有的网络服务器,我猜有很多关于您的特定服务器的在线指南。 这也会告诉客户端从 HTTP 永久切换到 HTTPS。

如果问题更多地与方法而不是 HTTP/HTTPS 相关,那么“405 METHOD NOT ALLOWED”将是正确的选择。如果不允许客户端调用方法本身,这就是您应该响应客户端的内容。这将是误导的第一步,因为问题在于 HTTP/HTTPS 协议,而不是客户端使用的方法(Get、Post、Put 等)。

答案 1 :(得分:-1)

426需要升级。这表明应该使用https。