Node.js 如何在nodejs中执行get-after-post?

Node.js 如何在nodejs中执行get-after-post?,node.js,reactjs,express,Node.js,Reactjs,Express,我正在执行react的post,然后在后端进行一些计算。如何执行get在post和计算后在我的前端显示结果?您在前面方法成功后调用它。使用嵌套调用。请查找下面的示例,其中应该有两个方法:在调用它们之前定义的yourPostMethod和yourGetMethod function handler () { return yourPostMethod() .then(yourGetMethod) .then((result) => { console.log(

我正在执行react的post,然后在后端进行一些计算。如何执行get在post和计算后在我的前端显示结果?

您在前面方法成功后调用它。使用嵌套调用。请查找下面的示例,其中应该有两个方法:在调用它们之前定义的yourPostMethod和yourGetMethod

function handler () {
  return yourPostMethod()
    .then(yourGetMethod)
    .then((result) => {
      console.log(result)
      return result
    })
}

你有问题的express标签,所以我假设你正在使用它

使用express时,
重定向
的效果非常好。我一直在用它

说:


这将在最后将您的后端指向
somepath

我想我明白你的问题了,尽管有些模糊。 但是,
1) 您想将数据发布到某个路由。路由可能会给出一个
成功
响应或一个
错误
或一些不同的数据,但它在内部进行一些处理,可能会将一些行添加到db表中。
2) 您希望获取db表的当前状态(我假设表可能是任何内容)

如果是这种情况,您只需在链中添加一个get调用就可以完成您正在做的事情

axios.post('/api/OddsCalculator', newGame)
.then(games => {
    // this means you got your game
    this.setState({ games }, () => console.log(), games);
    //now add one get request as well
    return axios('/api/getSomeData');
})
.then((data)=>{
    //this data is from the GET call
    this.setState({ data })
})
.catch(err => this.setState({
    errors: err.response.data
}))
希望这是一个公平的假设,但当您得到解决方案时,请随意编辑答案


请参阅此处的承诺链接:

您使用什么从您的react组件发布?post可以有响应,因此您可以将响应添加到post请求,而不是单独的get请求。axios或者我不应该?然后(games=>this.setState({games},()=>console.log(),games)).catch(err=>this.setState({errors:err.response.data}))}@AneliaKostadinova-您正在设置react应用程序的状态。您通常如何显示来自该州的数据?这是一样的。问题是如何使用React…呈现HTTP响应,而不是如何使HTTP响应成为重定向。@Quentin问题是“如何执行get以显示结果…”他说“在我的前端显示结果”,因此,我假设他已经设置了状态和内容。然后它变成了“如何执行get”,这不就是询问如何做出HTTP响应吗?这是我的理由,即使你这样解释……重定向不会将数据发送到客户端。@Quentin我从来没有说过。问题中缺少功能。当问题是“做了一些计算”时,我认为setState已经完成了。然后,他只想走捷径。非常感谢如果它奏效了,请随意将答案标记为已接受。
axios.post('/api/OddsCalculator', newGame)
.then(games => {
    // this means you got your game
    this.setState({ games }, () => console.log(), games);
    //now add one get request as well
    return axios('/api/getSomeData');
})
.then((data)=>{
    //this data is from the GET call
    this.setState({ data })
})
.catch(err => this.setState({
    errors: err.response.data
}))