📅  最后修改于: 2023-12-03 15:14:57.332000             🧑  作者: Mango
在开发 Web 应用程序时,获取主机 URL 是非常有用的,可以用来构建动态的链接或者进行一些 API 请求。本文将介绍使用 Express 框架来获取主机 URL 的几种方法。
可以使用 req.protocol
获取请求协议,通过 req.get('host')
方法获取主机名和端口号,最后拼接起来即可得到主机 URL。
const express = require('express');
const app = express();
app.get('/', (req, res) => {
const hostUrl = `${req.protocol}://${req.get('host')}`;
res.send(`Host URL: ${hostUrl}`);
});
app.listen(3000, () => {
console.log('Server is running on port 3000...');
});
使用 req.hostname
可以直接获取主机名,不需要再获取协议和端口号,但需要注意的是,该方法只返回主机名,不包括端口号。
const express = require('express');
const app = express();
app.get('/', (req, res) => {
const hostUrl = `http://${req.hostname}`;
res.send(`Host URL: ${hostUrl}`);
});
app.listen(3000, () => {
console.log('Server is running on port 3000...');
});
除了在代码中获取主机 URL 外,还可以通过在配置文件中定义主机地址和端口号来获得主机 URL,比如:
{
"host": "localhost",
"port": 3000
}
然后在代码中导入配置文件,并拼接主机 URL。
const config = require('./config.json');
const hostUrl = `http://${config.host}:${config.port}`;
总之,获取主机 URL 是非常实用的功能,可以方便的构建动态的链接或者进行一些 API 请求。以上是几种常用的方法,希望能够帮助到大家。