我正在尝试使用进行从React组件到PHP服务器的graphql调用fetch
。这是我第一次尝试使用fetch
。
我在浏览器端使用React JS,在服务器端使用Symfony 4。但是,尽管我的浏览器开发工具似乎指示已发送数据,但我所有的呼叫最终都在服务器端变成一个空主体。
使用graphiql时,请求成功。我正在尝试尽可能模仿来自React的graphiql请求,但是主体始终是空白的。
这里是电话:
fetch('/api', {
'method': 'post',
'credentials': 'include',
'headers': {
'Content-Type': 'application/json',
},
'body': JSON.stringify({
"query": "mutation {UpdateActionStatus(input: {actionId: 61, status: TO_DO}) { id }}",
"variables": null
}),
}).then(r => {
console.log(r.json());
return r.json();
}).catch(error => {
console.log('There has been a problem with your fetch operation: ', error.message);
});
我曾尝试与mode
设置为cors
,no-cors
,same-origin
,navigate
:没有这些工作。
我已经尝试过Firefox和Chrome:仍然没有运气。
将内容类型更改为application/graphql
似乎也不起作用。
fetch
在stackoverflow和其他地方使用时,我在响应和请求中都看到许多与空主体有关的问题,但是找不到解决方案似乎可以解决我的问题。
我也尝试了以下更粗略的电话,但无济于事。似乎由于某种原因我无法使用提取功能:
fetch('/api', {
'method': 'post',
'credentials': 'include',
'headers': {
'Content-Type': 'application/x-www-form-urlencoded',
},
'body': 'test=test',
});
该怎么办?我在这里缺少简单的东西吗?
现在,我将GraphQL与React结合使用,而不是直接使用访存,并且大多数情况下它运行良好。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句