在 Express.js 中獲取請求的域名資訊
我們需要獲取 DNS 資訊才能追蹤我們接收請求的地址。此功能還提供了一層額外的安全防護,可保護應用程式免受各種型別的 DOS 和 DDOS 攻擊。
我們可以使用以下函式獲取域名和主機資訊。
語法
獲取起源資訊
var origin = req.get('origin');獲取主機資訊
var host = req.get('host');示例 1
建立一個名為"dnsInfo.js" 的檔案,然後複製以下程式碼片段。建立檔案後,使用命令"node dnsInfo.js"執行此程式碼,如下例所示 −
// Getting the Host info Demo Example
// Importing the express module
var express = require('express');
// Initializing the express and port number
var app = express();
var PORT = 3000;
// Creating a GET Api endpoint
app.get("/route", (req, res) => {
var host = req.get('host');
console.log(host)
var origin = req.get('origin');
console.log(origin)
})
app.listen(PORT, function(err){
if (err) console.log(err);
console.log("Server listening on PORT", PORT);
});輸出
用 GET 請求訪問以下 URL:localhost:3000/route
C:\home
ode>> node dnsInfo.js Server listening on PORT 3000 localhost:3000 undefined
示例 2
我們再看一個示例。
// Getting the Host info Demo Example
// Importing the express module
var express = require('express');
// Initializing the express and port number
var app = express();
var PORT = 3000;
// Creating a GET Api endpoint
app.get("/route", (req, res) => {
var host = req.get('host');
console.log("Host: ", host)
var origin = req.get('origin');
console.log("Origin: ", origin)
var userIP = req.socket.remoteAddress;
console.log("UserIp: ", userIP)
res.send("DNS host" + host +" origin: " + origin +" userIP : "+ userIP)
})
app.listen(PORT, function(err){
if (err) console.log(err);
console.log("Server listening on PORT", PORT);
});輸出
C:\home
ode>> node dnsInfo.js Server listening on PORT 3000 Host: localhost:3000 Origin: undefined UserIp: ::ffff:127.0.0.1
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP