fetch SyntaxError: Unexpected token < in JSON at position 0
我在尝试使用fetch从express服务端获取数据时,总是报这个错,google也没有找到解决办法
server.js
var express = require('express')
var app = express()
app.get('../pages/endsite', function(req, res) {
res.json({message: 'success'})
})
fetch
async function fetchGank() {
try {
let res = await fetch('../express/server')
// 等待 parse json
let data = await res
console.log (data.message)
}
catch(e) {
console.log(e)
}
}
fetchGank()
是哪里出错了么?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
报这个错误一般要解析的 JSON 字符串不合法,我猜测你接收到的不是 JSON 字符串,而是 HTML 文本,所以报第一个字符是
<
你可以打印一下
res.headers.get('content-type')
,看看是不是application/json
,或者通过其他方式看看接口返回的是否是合法的 JSON 字符串。编辑
直接返回res
不要返回res.json