javascript - fetch 跨域POST提交,程序接收不到数据?
怪我咯
怪我咯 2017-04-11 09:18:20
[JavaScript讨论组]
//jQuery 跨域POST可以正常提交和接受数据
$.post("http://127.0.0.1:3000/api/test", { name: "John", time: "2pm" },function(argument) {
    console.log(argument);
});
// fetch 使用了这个 https://github.com/github/fetch,后台程序接收不到数据,该如何设置?
fetch('http://127.0.0.1:3000/api/test', {
      method: 'POST',
      mode: "no-cors",
      headers: {
        'Accept': 'application/json',
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        name: 'Hubot',
        login: 'hubot',
      })
    });

改为同源(如下)是ok的,问题的应该是在跨域上

fetch('/api/test', {
  method: 'POST',
  headers: {
    'Accept': 'application/json',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    name: 'Hubot',
    login: 'hubot',
  })
})

截图在这里,按照console的错误提示添加 mode: "no-cors"后,可以正常发送请求

接收不到post值

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(2)
怪我咯

我也遇到这个问题,楼主解决了么?

ringa_lee

API将同源策略的值设置成*

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号