在 Restlet 中设置 `Access-Control-Allow-Methods`

Setting `Access-Control-Allow-Methods` in Restlet

所以我正在尝试使用 CorsFilter 在 Restlet 2.3.0 上设置 CORS。不幸的是,我似乎无法找到一种方法来设置 Access-Control-Allow-Methods 以便我可以添加 POST, GET, OPTIONS

问题是,如果没有这个,我会不断收到 405 错误,例如:

Request Method:OPTIONS
Status Code:405 Method Not Allowed

我刚刚为我的工作成功设置了这个,我没有添加 header Access-Control-Allow-Methods。如果您想限制 cross-domain 访问的允许方法,我认为您需要使用它。我遵循了与您 link:

中提到的完全相同的代码
@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!
}