为什么在发布方法中未定义数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么在发布方法中未定义数据相关的知识,希望对你有一定的参考价值。

我正在使用react js应用,我尝试将数据发布到我的api,但是有一次我未定义插入。而不是'url',我有工作的URL。

这是我的post方法的代码:

senddata()
    if(!this.formvalidation())
    
    try
    let resulte = fetch('url',
     method:'post',
     mode:'no-cors',
     headers:
         'Accept':'application/json',
         'Content-type': 'application/json'
     ,
     body:JSON.stringify(
         ID:this.state.code,
         Blod:this.state.blod,
         Allergic:this.state.allergicdescription,
         Chronic:this.state.chronic_description
     )
    );
    alert("post");
    catch(e)
      alert("not post")
    


谢谢。

答案

您说的是mode:'no-cors',因此任何需要获得CORS许可的尝试都将无声地失败。

设置'Content-type': 'application/json'需获得CORS的许可。

[大概,您的服务器端代码未将请求正文解析为JSON,因为Content-Type标头没有说它是JSON。

因为没有解析的数据,所以您要从JSON读取的所有属性都将是未定义的。

如果要发布JSON,请不要使用mode:'no-cors'。>>

以上是关于为什么在发布方法中未定义数据的主要内容,如果未能解决你的问题,请参考以下文章

为啥在区域表定义中未创建 state_id 字段?

rails中未定义的方法`devise_for'

为啥此 setInterval 中未定义此 useRef 值?

为啥浏览器中未定义socket.id

为啥子组件中未定义上下文?

VueJS - “this”在通用函数中未定义