【问题标题】:Axios post request returns data instead of rendering an error pageaxios post请求返回数据而不是渲染错误页面
【发布时间】:2022-02-01 17:52:00
【问题描述】:

我有这个帖子请求:

axios({
    method: "post",
    url: "/sessions/add",
    data: {
        session: {
          name: session.session.name,
          date: sessionDateInput.value,
        },
      },
    })
    //redirect back to sessions/add
    .then((res) => console.log(res))
    .catch((err) => console.log(err.response.data));

如果所有帖子数据都正确,它可以正常工作,但是,如果它不正确,我的“views”目录中有一个错误页面, 话虽如此,我的快递服务器无法呈现res.render('errorPage') 而不是呈现错误页面,而是在控制台中引发错误。

如果我使用 html 并且它能够res.render,则发布请求可以正常工作:

<form method="post" action="/route"></form>

错误页面:

有什么办法解决这个问题?

【问题讨论】:

    标签: html node.js express axios ejs


    【解决方案1】:

    由于响应包含html-document 以防出错,您可以将当前文档替换为其内容,例如:

    //...
    .catch((err) => document.write(err.response.data));
    

    【讨论】:

      猜你喜欢
      • 2022-01-05
      • 2019-12-24
      • 2013-07-06
      • 2020-12-02
      • 1970-01-01
      • 2018-04-21
      • 1970-01-01
      • 2019-06-20
      • 2021-04-09
      相关资源
      最近更新 更多