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類型的,求大神賜教
問題解答
回答1:第2行,應該是method,不是methos
回答2:直接原因是由于 ‘method’ 拼寫錯誤。背后原因是由于拼寫錯誤導致默認請求方式為 ‘GET’ 請求, 二 HTTP/1.1協議規范里 對于 ‘GET’ 請求不支持在 body 里攜帶數據,參數只能通過URL傳遞。具體可參考 http://stackoverflow.com/ques...
回答3:應該使用postData=’lalala’,跟jquery查找規則相關,具體可再了解。
相關文章:
1. android - rxjava merge 返回Object對象數據如何緩存2. docker 下面創建的IMAGE 他們的 ID 一樣?這個是怎么回事????3. angular.js - ionic2 瀏覽器跨域問題4. python - Scrapy存在內存泄漏的問題。5. javascript - 螞蟻金服里的react Modal方法,是怎么把元素插入到頁面最后的6. mysql 一個sql 返回多個總數7. 如何用筆記本上的apache做微信開發的服務器8. docker-compose中volumes的問題9. CSS3 畫如下圖形10. java - 三位二進制表示8進制,四位二進制表示16進制,那么多少二進制表示10進制呢?
