关于ReactJS中通过Typicode的My JSON Server POST更新数据库的疑问
关于My JSON Server的POST请求疑问解答
嗨,我来帮你理清这个关于My JSON Server的疑问~
首先直接给你答案:你没法通过POST请求真正更新My JSON Server的"数据库"。它的机制其实是这样的:
- My JSON Server本质是依托你GitHub仓库里的
db.json文件来提供数据的,所有的写操作(POST/PUT/DELETE)都是模拟行为 - 当你发送POST请求时,它会在服务器内存里临时模拟出修改后的结果,返回给你看起来成功的响应(也就是你控制台里打印的
res和res.data),但这些修改根本不会同步到你GitHub仓库的db.json文件里 - 等你刷新页面或者重新发起请求,数据又会回到原来的样子
你写的这段POST请求代码本身是没问题的:
axios.post(`my-url`, { user }) .then(res => { console.log(res); console.log(res.data); })
它能正常触发模拟的写操作,拿到返回结果,但就是没法持久化修改。
如果你的需求是需要一个能真正保存修改的Fake API,其实可以试试在本地部署json-server工具(直接用npm就能安装),它能把本地的JSON文件当作真实数据库,写操作会直接修改文件,实现持久化的效果。
内容的提问来源于stack exchange,提问作者Undelivered
相关产品推荐
相关产品推荐

