Javascript 在GET请求React fetch中传递有效负载
我试图构建一个react/node应用程序,并试图将从用户输入中获取的值传递到nodejs api,以调用一个单独的api(Instagram api) 我想从React应用程序将一个对象附加到req.body。我想这样做:Javascript 在GET请求React fetch中传递有效负载,javascript,node.js,reactjs,fetch,Javascript,Node.js,Reactjs,Fetch,我试图构建一个react/node应用程序,并试图将从用户输入中获取的值传递到nodejs api,以调用一个单独的api(Instagram api) 我想从React应用程序将一个对象附加到req.body。我想这样做: app.get('/hashtags', (req,res) => { console.log(req.body); console.log(req.body.tag); }); 这是我对上述节点请求负责的react应用程序代码: handleChang
app.get('/hashtags', (req,res) => {
console.log(req.body);
console.log(req.body.tag);
});
这是我对上述节点请求负责的react应用程序代码:
handleChange(e){
const searchtag = 'hello';
fetch('/hashtags', {
method: 'GET',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
tag: searchtag,
}),
})
}
单击按钮时,我正在调用handleChange
函数。
对于上面的代码,我需要我的节点api调用/hashtags
,使用req.body.tag='hello'
(当我从reactjs传递'hello'
时)
但这给了我以下错误:
Uncaught (in promise) TypeError: Failed to execute 'fetch' on 'Window': Request with GET/HEAD method cannot have body.
如果不能这样做:如何从react应用程序将对象附加到节点api
req.body
?如果要传递字符串serach标记,为什么要按照rest
在body
中传递它
handleChange(e){
const searchtag = 'hello';
fetch('/hashtags/' + searchtag, {
method: 'GET',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
),
})
}
使用POST请求,get不能有正文。可能是@KoenS的副本,但可以在get请求中传递数据,对吗?@KoenS这在技术上是不正确的,请参见:@JulienAmbos是的,可以,但不应该这样做。:-)ThidasaParanavitharana你应该像shyam在回答中所做的那样,将标签作为询问串传递。