我试图了解设置数据标题后的授权工作方式。成功登录后,我正在使用通行证和jwt对用户进行身份验证并设置授权标头。
res.setHeader('authorization', 'JWT ' + token);
console.log(res.getHeader('authorization'));
// prints JWT eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwidXNlcl9wYXNzd29yZCI6IiQyeSQxMiR1VUh3czBoeXVYSFhjWTFXWFd2L21ldlNZUFBZcm4xLjdmdEwxb1RSN29mQmxDMEpERE5uLiIsInVzZXJfyMDc1NzM1LCJleHAiOjE1MzQ2Njc3MzV9.F4j6eXpbhPLsLOAixwyNT6PLOUhna1C6CA4iIVbidXsbmFtZSI6ImFkbWluIiwiaWF0IjoxNTM
例如,在我的主路由器上,应该只允许已登录的用户进入,我不能捕获此标头吗?设置此标头后,它似乎仅在重新加载页面之前有效。我做了previous question about it,但不够具体。
我开始考虑护照成功认证后授权的工作方式以及如何设置标题或cookie或其他内容?
答案 0 :(得分:0)
您需要的是为您的http请求创建一个拦截器,您将在其中插入用于设置每个响应的标头的规则
var http = require('http');
http.Interceptor.register({
test: {
uri: '/me/friends',
host: 'graph.facebook.com'
},
rule: {
response: {
headers: {
'Set-Cookie': 'AuthSessId=41D3D0110BA61CB171B345F147C089BD; path=/',
'Content-Type': 'application/json'
}
uri: /^\/dialog\/oauth/,
host: 'www.facebook.com'
});
您可以使用此npm软件包,并遵循文档中的内容 请访问https://www.npmjs.com/package/node-interceptor