搜尋

首頁  >  問答  >  主體

javascript - react native 使用fetch 向後端傳資料提示錯誤

我的react native 程式碼如下:


fetch('https://www.lisonblog.cn/apptest/test.php',{
    methos: 'POST',
    headers: {
        'Content-Type': 'application/json',
    },
    body: JSON.stringify({
        postData:'lalala'
    })
}).then(function(res) {
    alert(res.status)
    if (res.status === 200) {
        return res.json()
    } else {
        return Promise.reject(res.json())
    }
}).then(function(data) {
    alert(data)
}).catch(function(err) {
   alert(err);
});

我的後端的PHP程式碼是這樣的:

<?php
  $res = $_POST['postData'];
  echo $res;
?>

最后在手机APP上弹出这个错误:TypeError:Body not allowed for GET or HEAD requests

#請問是什麼原因?我看網路上有的需要傳輸的資料是formData類型的,求大神賜教

phpcn_u1582phpcn_u15822753 天前615

全部回覆(3)我來回復

  • 我想大声告诉你

    我想大声告诉你2017-05-16 13:37:38

    第2行,應該是method,不是methos

    回覆
    0
  • 高洛峰

    高洛峰2017-05-16 13:37:38

    直接原因是由於 ‘method’ 拼字錯誤。背後原因是由於拼字錯誤導致預設請求方式為 ‘GET’ 請求, 二 HTTP/1.1協定規格裡 對於 ‘GET’ 請求不支援在 body 裡攜帶數據,參數只能透過URL傳遞。具體可參考 http://stackoverflow.com/ques...

    回覆
    0
  • PHPz

    PHPz2017-05-16 13:37:38

    應該使用postData='lalala',跟jquery查找規則相關,具體可再了解。

    回覆
    0
  • 取消回覆