背景
写个demo,偷懒没高兴起服务,使用fetch获取本地json文件,还是使用 create-react-app的项目,悲剧了,报错~~~
json格式错误,我去,这么低级,立马打开json文件
脑壳疼,没得问题。醉了。
百度吧,什么用response.text()代替response.json()来获得字符串,什么直接返回response不要返回response.json,什么设置headers。。。。。
一大堆乱七八糟的,不晓得自己验证过没,或者符合提问的帖子的项目结构和运行环境不。还是自己调查吧。
检查错误
- 打印response
status=200
,说明请求对的,查看json文件结构也对,为啥还报json结构错误。 -
打开chrome开发工具,点开Network
我去,咋返回react打包后的index.html,怪不得报错json格式问题呢。
一想到打包,我去,大概明白了。自己看看console.
看到了这个请求地址,基本确定了。应该是json文件放的路径问题。
这个路径是打包前的路径
这个里的“../”是相对你的首页index.html而言的。所以json数据文件得放到最后打包的相对于index.html的路径。
换了打包文件目录放json文件,调整请求地址
完美,解决了。
总结
由于最后是打包发布,所以json数据文件目录得多注意,尤其现在项目喜欢用Node等微服务。
网友评论