我正在创建一个微服务,为客户端调用GET和POST请求。我在AWS Api Gateway中进行设置,但我认为我的一般问题适用于任何托管平台。
我构建了端点,将其部署到AWS Lambda,并通过Api Gateway将其公开为端点。然后我尝试从浏览器调用它:
$.ajax({
url: options.url,
dataType: 'json',
crossDomain: true,
contentType: "application/json",
type: "POST",
x-api-key: "asdfasdfasdfadf_MY_KEY_adsfadsfasdf",
data: options.params,
success: doSuccessStuff
error: doErrorStuff
});
当我检查GET和POST请求的“API Key Required”但是OPTIONS未选中时,一切似乎都能正常工作。
但是,当我检查选项的“需要Api密钥”时,我在调用它时会收到403错误。
所以这让我想知道,这是最好的做法 - 让除了选项之外的所有资源都被Api Key保护? “授权”和“请求验证器”也是如此吗?