所以我正在尝试使用CorsFilter在Restlet 2.3.0上设置CORS。不幸的是,我似乎无法找到设置Access-Control-Allow-Methods
的方法,以便我可以添加POST, GET, OPTIONS
。
问题在于,如果没有这个,我会不断收到405错误,例如:
Request Method:OPTIONS
Status Code:405 Method Not Allowed
答案 0 :(得分:3)
我只是为我的工作成功设置了这个,我没有必要添加标题Access-Control-Allow-Methods
。如果您想限制允许的跨域访问方法,我认为您需要使用它。我遵循链接中提到的完全相同的代码:
@Override
public Restlet createInboundRoot()
{
// Create a Restlet router that defines routes
final Router router = new Router(getContext());
// Add a CORS filter to allow cross-domain requests
CorsFilter corsFilter = new CorsFilter(getContext(), router);
corsFilter.setAllowedOrigins(new HashSet<String>(Arrays.asList("*")));
corsFilter.setAllowedCredentials(true);
// Setup up resource routing
// ...
return corsFilter; // Important!
}