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类型的,求大神赐教

阅读 4.8k
3 个回答

第2行,应该是method,不是methos

直接原因是由于 ‘method’ 拼写错误。背后原因是由于拼写错误导致默认请求方式为 ‘GET’ 请求, 二 HTTP/1.1协议规范里 对于 ‘GET’ 请求不支持在 body 里携带数据,参数只能通过URL传递。具体可参考 http://stackoverflow.com/ques...

应该使用postData='lalala',跟jquery查找规则相关,具体可再了解。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题