我目前正在做一个博客应用程序,我正在努力寻找一种方法来重定向/发送特定的状态,然后采取相应的行动。
例如,我有一个使用mongoose在mongodb中保存数据的函数。则如果没有错误发生200状态。
newArticle.save(function(err){
if (err) throw err;
else {
res.sendStatus(200);
}
});
我希望能够“获取”此状态(我为我的视图和路由使用react,为我的ajax请求使用superagent ),然后执行一些操作,例如,如果我的文章成功添加,则在页面上加载某个组件,该组件将具有一个h1,该组件将显示:在发布文章方面做得很好。
这是第一部分。
第二部分是,对于我想要express重定向我的所有404或500个错误,例如: myblog.com -> myblog.com/什么,然后用我的react路由器简单地呈现一些基本的404页面,我不知道该怎么做,我搜索了很多,但找不到什么……
而且,由于我缺乏HTTP基础知识,比如服务器和客户端如何相互通信,如果你有什么好的文章/书可以推荐,我很想知道。
发布于 2016-08-24 02:22:50
第一部分。根据你使用的是状态还是像flux或redux这样的数据库,如果不是,你可以让ajax response从你的服务器获得HTTP状态。使用它,您可以使用setState来设置一个类似于isArticleSaveSucessful
的状态属性。如果该键为true,则只需呈现您的成功消息组件。
第二部分。为了获得更好的用户体验,我想这就是你想要的,url应该仍然是用户想要的,比如blog.com/a article-name,但是页面应该呈现一个404。与上面非常类似,当API响应返回时,相应地执行setState,类似于articleNotFound
。然后在渲染函数中,对状态进行if
检查,如果为真,则渲染错误组件。
https://stackoverflow.com/questions/39113026
复制