无法查看授权 header
Cannot view authorization header
我正在使用 node.js 默认 HTTP 模块并有一个 HTTP 网络服务器。
我使用 request.headers 获取所有 header,但是当我尝试执行 request.headers.authorization 时 returns 未定义,但有授权 as you can see here.
我尝试执行 JSON.parse(request.headers).authorization,但仍未定义,并且使进程崩溃。如何获取授权header内容?
也许你可以使用方法request.getHeader(name)
我查看了 https://nodejs.org/api/http.html#http_request_getheader_name
编辑 1:
index.js
const http = require('http');
const server = http.createServer((request, response) => {
console.log(request.headers);
console.log(request.headers.authorization);
console.log('----');
const headers = {
'Content-Type': 'text/plain',
};
let statusCode = 404;
response.writeHead(200, headers);
response.end('Hi');
});
server.listen(8080, () => {
console.log(`Server listening on port :8080 `);
});
在一号航站楼执行:
node index.js
二号航站楼:
curl localhost:8080 -H 'authorization: hello'
一号终端的输出是:
{ host: 'localhost:8080',
'user-agent': 'curl/7.68.0',
accept: '*/*',
authorization: 'hello' }
hello
----
我正在使用 node.js 默认 HTTP 模块并有一个 HTTP 网络服务器。
我使用 request.headers 获取所有 header,但是当我尝试执行 request.headers.authorization 时 returns 未定义,但有授权 as you can see here.
我尝试执行 JSON.parse(request.headers).authorization,但仍未定义,并且使进程崩溃。如何获取授权header内容?
也许你可以使用方法request.getHeader(name)
我查看了 https://nodejs.org/api/http.html#http_request_getheader_name
编辑 1:
index.js
const http = require('http');
const server = http.createServer((request, response) => {
console.log(request.headers);
console.log(request.headers.authorization);
console.log('----');
const headers = {
'Content-Type': 'text/plain',
};
let statusCode = 404;
response.writeHead(200, headers);
response.end('Hi');
});
server.listen(8080, () => {
console.log(`Server listening on port :8080 `);
});
在一号航站楼执行:
node index.js
二号航站楼:
curl localhost:8080 -H 'authorization: hello'
一号终端的输出是:
{ host: 'localhost:8080',
'user-agent': 'curl/7.68.0',
accept: '*/*',
authorization: 'hello' }
hello
----