簡體   English   中英

CORS 僅 POST 請求錯誤:AWS HTTP API 網關

[英]CORS Error for Only POST request: AWS HTTP API Gateway

所以我的AWS HTTP API GATEWAY被集成到一個Lambda Function。

這是我在 AWS 上的 CORS 配置。 CORS配置

我的 GET 和 POST(無正文)請求工作正常。 在此處輸入圖像描述

但是當我用一些數據/主體發出 POST 請求時,它有一個 CORS 錯誤。

Access to XMLHttpRequest at 'https://api_url/test' from origin 'http://localhost:3000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.

我了解瀏覽器如何在原始 POST 請求之前向服務器發送 OPTIONS 請求。

這是 OPTIONS 請求的 CORS 錯誤。 在此處輸入圖像描述

以下是我如何使用 axios 從反應應用程序調用我的請求。

const res_post = axios.post(`${process.env.REACT_APP_AWS_API_GATEWAY}/test`, {key: "value"}).then((res) => {
    console.log("AXIOS POST REQUEST 2 RESULT", res, res.data);
});

我嘗試在 axios 呼叫中添加聽眾,運氣不好。 正如一些答案所建議的那樣,我為 OPTIONS 請求添加了一條路線(for / & /test),不幸的是沒有運氣。 在此處輸入圖像描述

我花了 4 個多小時找出並應用了 stackoverflow 上的所有解決方案。 如果有人能指出正確的方向,我將不勝感激。 我已經閱讀了多個 stackoverflow 問題並應用了其中的幾個。

參考這個: Vue & Axios + AWS API Gateway & Lambda - CORS + POST not working

即使我添加了一種處理 OPTIONS 請求的方法。 我的 lambda function 正在返回並且響應為空。 我修好了,它起作用了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM