Javascript 向node.js中的重定向url发送设置cookie头
我正在使用node.jsJavascript 向node.js中的重定向url发送设置cookie头,javascript,node.js,express,redirect,cookies,Javascript,Node.js,Express,Redirect,Cookies,我正在使用node.jsrequestmodule从API获取id\u令牌。获取id_令牌后,我想向重定向的url发送一个带有设置cookie头的重定向uri响应。但我不太明白怎么做 这是我的密码: app.use("/nodejs-server/retrieveCode", function(req, res) { var clientID = 'some random string' var client_Secret = 'another random s
request
module从API获取id\u令牌。获取id_令牌后,我想向重定向的url发送一个带有设置cookie头的重定向uri
响应。但我不太明白怎么做
这是我的密码:
app.use("/nodejs-server/retrieveCode", function(req, res) {
var clientID = 'some random string'
var client_Secret = 'another random string'
var code_token = clientID + ":" + client_Secret
var buffer = new Buffer(code_token)
var token = buffer.toString('base64')
var rtoken = "Basic " + token;
var headers = {
'Content-Type': 'application/json',
'Authorization': rtoken
}
var postData = {grant_type: 'authorization_code', code: req.query.code, redirect_uri: 'http://localhost:3000/nodejs-server/retrieveCode'} //Query string data
var options = {
method: 'POST', //Specify the method
body: postData,
url: 'http://localhost:4000/server/token',
json: true,
headers: headers
}
request(options
, function(error, response, body){
if(error) {
console.log(error);
} else {
//send a redirect uri and set-cookie header response
}
});
我试着用
res.redirect(302, "http://localhost:9000");
它可以重定向,但我也不能发送cookie
非常感谢您的帮助。经过大量的尝试和错误,以及谷歌搜索,我终于能够实现我的目标。为了向重定向URL发送一个过期的cookie,我刚刚添加了
s = body.exp.toUTCString();
res.cookie('id_token' ,body.id_token, {expires: s});
res.redirect(302, 'http://localhost:8080');
在express 4.16.3中,必须设置
库奇决议()
以前
res.重定向()
它对我来说很有效,没有错误只需注意,302是不需要的,因为Express已将302作为默认状态代码。如果没有Express,您将如何执行此操作?