javascript - React/redux 使用 post 请求更新数据库
问题描述
我正在尝试使用 react/redux 更新我的数据库,但我不知道如何更新。据我了解,可以使用获取发布请求来完成。我正在尝试在我的动作创建者中执行此操作,但我认为我缺乏对发布请求语法的整体理解。
如果我能得到一个使用 fetch 来使用发布请求的正确方法的例子,我会很感激,甚至是指向正确方向的链接。
解决方案
我从 Mozilla文档中获取了 fetch 示例:
export function postDataSuccess(response) {
return {
type: 'POST_SOMETHING',
response
};
}
export function postData(url, data) {
return dispatch => {
fetch(url, {
body: JSON.stringify(data), // must match 'Content-Type' header
cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached
credentials: 'same-origin', // include, same-origin, *omit
headers: {
'user-agent': 'Mozilla/4.0 MDN Example',
'content-type': 'application/json'
},
method: 'POST', // *GET, POST, PUT, DELETE, etc.
mode: 'cors', // no-cors, cors, *same-origin
redirect: 'follow', // manual, *follow, error
referrer: 'no-referrer', // *client, no-referrer
})
.then(response => dispatch( postDataSuccess(response.json()) ));
}
}
然后在您的代码中,您可以在需要执行操作时使用 postData,并在减速器中侦听“POST_SOMETHING”操作。
推荐阅读
- android-studio - Android Studio 升级想要删除“意外”的 .jks 文件?
- json - 从 Firebase remoteMessage 中的嵌套 JSON 中提取数据
- python - Python - 从带有进度条的谷歌驱动器下载
- elasticsearch - 查找字段以 (ElasticSearch) nodejs 客户端开头的项目
- android - 设置视图背景不透明度的正确时机是什么
- java - Java Thread 在 Thread.sleep 方法之后不起作用
- istio - 我可以在 Istio 中查看服务注册表的内容吗?
- python - 如何使用 ./ 从 Linux 终端运行 python?
- python - 全局变量不会在外部进程的循环中更新
- image-processing - 在特定字体上训练 Tesseract 会产生空的 tr 文件