Express.js 中的 req.hostname 属性


req.hostname 包含源自主机 HTTP 标头的 hostname。当信任设置属性已启用(或未设置为 false)时,此属性将从 X-Forwarded-Host 标头字段获取其值。此标头可以由客户端或代理设置。

如果请求中存在多个 X-Forwarded-Host 标头,则使用第一个标头的值。

语法

req.hostname

示例 1

创建一个文件,名称为 "reqHostname.js",复制以下代码片段。创建文件后,使用如下示例中所示命令 "node reqHostname.js" 运行此代码 −

// req.hostname Property Demo Example

// Importing the express
var express = require('express');

// Initializing the express and port number
var app = express();

// Initializing the router from express
var router = express.Router();
var PORT = 3000;

// Defining an Endpoint
app.get('/api', function (req, res) {
   console.log(req.hostname);
   res.send(req.hostname);
});
app.listen(PORT, function(err){
   if (err) console.log(err);
   console.log("Server listening on PORT", PORT);
});

用 GET 请求访问以下端点 − https://127.0.0.1:3000/api

输出

C:\home
ode>> node reqHostname.js Server listening on PORT 3000 localhost

示例 2

我们来看另一个示例。

// Importing the express
var express = require('express');

// Initializing the express and port number
var app = express();

// Initializing the router from express
var router = express.Router();
var PORT = 3000;

// Defining an Endpoint
app.get('/api', function (req, res) {
   console.log(req.hostname);
   res.send(req.hostname);
});
app.listen(PORT, function(err){
   if (err) console.log(err);
   console.log("Server listening on PORT", PORT);
});

用 GET 请求访问以下端点 −

  • https://127.0.0.1:3000/api

并设置标头为 −

  • 主机 − tutorialspoint.com

输出

C:\home
ode>> node reqHostname.js Server listening on PORT 3000 tutorialspoint.com

更新于:2022 年 1 月 29 日

2K+ 视图

开启你的 职业

完成课程即可获得认证

开始学习
广告