8

我正在尝试设置Access-Control-Allow-Methods标头,options目前看来claudia-api-builder无法设置 http 选项响应,就像GET请求一样。请参阅下面的 GET 示例。

获取示例

api.get('/hard-coded-headers', function () {
   return 'OK';
}, {success: {headers: {'Access-Control-Allow-Methods': 'GET, HEAD, OPTIONS'}}});

此外 ...

如果此标头值是通过设置的aws-api-gateway -> resources -> OPTIONS > Integration Response,然后如果您要执行 a claudia update,它将被覆盖回其默认状态,如下所示。

AWS-ApiGateway 自定义映射响应设置

文档显示claudia-api-builder它支持 API Gateway 自定义错误响应,但没有成功。

我希望能够设置选项自定义标头响应,例如处理 GET 请求的方式。这可能吗?

4

2 回答 2

2

你试过这个new ApiResponse()功能吗?

api.get('/programmatic-headers', function () {
  return new api.ApiResponse('OK', {'Access-Control-Allow-Methods': 'GET, HEAD, OPTIONS'}, 200);
});
于 2018-01-18T00:55:06.670 回答
1

跨域资源共享 (CORS) 是一种机制,它使用额外的 HTTP 标头让用户代理获得从与当前使用的站点不同的源(域)上的服务器访问选定资源的权限。

您可以保证对域(或多个)、http 动词或 contentType 的权限

res.header('Access-Control-Allow-Origin', 'example.com');
res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
res.header('Access-Control-Allow-Headers', 'Content-Type');
于 2018-01-24T22:17:34.027 回答