📌  相关文章
📜  如何在 express js 中发送响应 - Javascript (1)

📅  最后修改于: 2023-12-03 15:38:15.582000             🧑  作者: Mango

如何在 Express.js 中发送响应

在 Express.js 中,响应是从服务器返回给客户端的数据。响应通常用于向客户端发送 HTML 页面、JSON 数据和错误信息等。

本文将介绍如何在 Express.js 中发送响应。我们将讨论如何设置响应头、如何发送 HTML 页面和 JSON 数据,以及如何处理错误信息。

设置响应头

在 Express.js 中,可以使用 set 方法设置响应头。例如,以下代码设置了响应的 Content-Type 头为 text/html

res.set('Content-Type', 'text/html');

还可以使用 contentType 方法设置响应头。例如,以下代码设置了响应的 Content-Type 头为 application/json

res.contentType('application/json');
发送 HTML 页面

在 Express.js 中,可以使用 send 方法发送 HTML 页面。例如,以下代码发送了一个简单的 HTML 页面:

app.get('/', (req, res) => {
  const html = '<html><body><h1>Hello, World!</h1></body></html>';
  res.send(html);
});

还可以使用 render 方法渲染模板,并将渲染后的 HTML 页面发送给客户端。例如,以下代码使用 EJS 模板引擎渲染了一个模板:

app.set('view engine', 'ejs');
app.get('/', (req, res) => {
  const data = { message: 'Hello, World!' };
  res.render('index', data);
});
发送 JSON 数据

在 Express.js 中,可以使用 send 方法发送 JSON 数据。例如,以下代码发送了一个简单的 JSON 对象:

app.get('/data', (req, res) => {
  const data = { message: 'Hello, World!' };
  res.send(data);
});

还可以使用 json 方法发送 JSON 数据。例如,以下代码发送了一个简单的 JSON 对象:

app.get('/data', (req, res) => {
  const data = { message: 'Hello, World!' };
  res.json(data);
});
处理错误信息

在 Express.js 中,可以使用 send 方法发送错误信息。例如,以下代码发送了一个错误信息:

app.get('/error', (req, res) => {
  const error = new Error('Something went wrong');
  res.status(500).send(error.message);
});

还可以使用 json 方法发送错误信息。例如,以下代码发送了一个错误信息:

app.get('/error', (req, res) => {
  const error = new Error('Something went wrong');
  res.status(500).json({ error: error.message });
});

当发生错误时,可以使用 next 方法将错误传递给 Express 错误处理中间件。例如,以下代码定义了一个错误处理中间件:

app.use((err, req, res, next) => {
  console.error(err.stack);
  res.status(500).send('Something broke!');
});
结论

在本文中,我们介绍了如何在 Express.js 中发送响应。我们学习了如何设置响应头、如何发送 HTML 页面和 JSON 数据,以及如何处理错误信息。希望这篇文章能够帮助你更好地理解如何在 Express.js 中发送响应。