关于用fetch发送post向mock接口请求数据失败的问题!

在用fetch向本地mock接口请求数据失败

这是报错信息
图片描述
这是post请求的代码
function post(url, data) {

console.log(url, data);
    return fetch(url, {
    method: "POST",
    headers: headers,
    body: data
}).then(response => {
    return handleResponse(url, response);
}).catch(error => {
    console.error(`Request failed. Url = ${url}. Message = ${error}`);
    return Promise.reject({ error: { message: "Request failed." } })
})

}
请问怎么才能请求到数据啊,这个接口没问题 直接在导航栏输入http://localhost:3000/user/User.json也能访问到

阅读 4.6k
3 个回答

你发过去的是对象,当然不行,转成字符串

你请求一个静态文件不能使用post请求,更不应该传递参数,因为你没有后台服务,参数无法解析,你直接换成get请求应该就可以了

fetch 第一次拿到的不是数据,不知道你的 return handleResponse(url, response); 是怎么处理的,
一个示例供参考:

fetch('http://example.com/movies.json')
  .then(function(response) {
    return response.json();//接受数据
  })
  .then(function(myJson) {
     // 第二次才能拿到数据
    console.log(myJson);
  });

文档:https://developer.mozilla.org...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题