我正在使用基于令牌的 lambda 授权器,如下所述: https ://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html
现在我仍在使用标题道具所在的玩具示例tokenHeader
我的获取如下:
export function logout() {
return (dispatch, getState) => {
return fetch('https://account-api.example.com/v1/logout', {
method: 'GET',
headers: {
'Access-Control-Request-Method': 'GET',
'Access-Control-Request-Headers': 'Content-Type, Authorization',
'Content-Type': 'application/json',
'tokenHeader':'allow',
},
credentials: 'include'
})
.then((response) => {
return response.json().then((body) => {
return {
status: body.statusCode,
payload:body.payload,
};
},
);
})
.then((response) => {
console.log("response", response)
if (response.status !== 200) {
dispatch({ type: 'LOGOUT_ERROR', payload: response.payload.error});
}
if (response.status === 200) {
dispatch({ type: 'LOGOUT_SUCCESSFUL', payload: response.payload });
}
})
.catch(error => {
dispatch({ type: 'LOGOUT_FAILED', payload: String(error)});
})
};
}
当我查看网络选项卡时'tokenHeader':'allow'
,我的请求中缺少标头,导致授权方发出 401 - 我需要做些什么来防止此标头被剥离?
旁注:此请求适用于邮递员
API 网关配置(不确定这是否相关):
我不想忽略 CORS 并在两者之间发送数据account-api.example.com
,dev.example.com
所以请不要回答指示删除/忽略 cors——我的目标是正确实现 cors。