簡體   English   中英

發布請求拋出 net::ERR_HTTP2_PROTOCOL_ERROR

[英]Post request throws net::ERR_HTTP2_PROTOCOL_ERROR

使用對 API 的發布請求時出現這 2 個錯誤(使用 chrome)

xhr.js:178 POST MY_API_URL net::ERR_HTTP2_PROTOCOL_ERROR createError.js:16 Uncaught (in promise) Error: Network Error at createError (createError.js:16) at XMLHttpRequest.handleError (xhr.js:83)

我正在做一個簡單的 POST 請求(反應代碼):

const postData = async()=>{
    let res = await Axios.post('/terrenos', {'idTerreno':'0'} );
    console.log( res.data );
}

在 API 方面,我只有這個用於調試(PHP 代碼):

if( $_SERVER["REQUEST_METHOD"] === 'GET'){
    main($_GET);
}else if( $_SERVER["REQUEST_METHOD"] === 'POST'){
    echo(json_encode($_POST));
}

當我不在正文中發送任何內容時,它工作得很好(它返回一個空數組)

const postData = async()=>{
    let res = await 
    Axios.post('https://gpgpy.000webhostapp.com/papaProject/API/v2/query.php');
    console.log( res.data );
}

當我將 postman 用於相同的請求時,無論有無主體,它也都可以工作。

我在使用帶有 React 的 Axios 和托管在 000webhost 上的 PHP web 服務時遇到了同樣的問題。 它與 Postman 以及 vanilla fetch function 完美配合。 奇怪,似乎是 Axios 和 000webhost 之間的兼容性問題...

我的解決方案是在我的 API 調用中使用fetch而不是 Axios,因為我沒有看到在我的場景中使用 Axios 的任何特殊原因。 這是一個很好的例子,說明如何將fetchPOST一起使用。

好像你在 3 個月前問過這個問題,所以我希望你能在我回復之前找到解決方案。 如果您設法將 Axios 與 000webhost 一起使用,請分享您的智慧

暫無
暫無

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

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