HTTP的
OPTIONS
方法被认为是用于确定服务器在给定资源上支持哪些其他方法。基于此,我有两个问题:
这个响应看起来像什么?我已经看到了
Public
、Allow
甚至是Access-Control-Allow-Methods
头中带有CSV列表的示例。它们都需要吗?有什么区别?RFC 2616在这里似乎并不是很有帮助。在非REST-API环境中使用这个方法列出资源支持的操作是否合适?例如,如果我的
ConversionController
支持convert
操作,那么像这样的响应是否有意义:
请求:
OPTIONS /conversion HTTP/1.1
响应:
HTTP/1.1 200 OK
...
Allow: CONVERT
...
CONVERT
是完全有效的,并且符合规范;事实上,RFC甚至指出方法名是区分大小写的,"因为它可能被用作具有区分大小写方法名的基于对象的系统的网关"。这意味着您甚至可以使用过程名作为HTTP方法进行RPC! - undefined