gpt4 book ai didi

javascript - api请求成功后如何在express中设置cookie

转载 作者:行者123 更新时间:2023-12-03 06:36:02 24 4
gpt4 key购买 nike

因此,在我的整个应用程序中,我使用 /api 路由来屏蔽我的真实 api url,并以如下方式快速代理它:

  // Proxy api calls
app.use('/api', function (req, res) {
let url = config.API_HOST + req.url // This gets my api url from config
req.pipe(request(url)).pipe(res) // This pipes it through
})

但是,我现在需要检查当用户发布到 /api/authenticate 并获得成功响应时,我是否需要使用 Express 中的 token 设置 httpOnly cookie。如何才能实现这一目标?我还需要访问该响应返回的数据以获取 token 。

最佳答案

我不知道我是否完全理解你的意思(而且我没有评论的声誉),但我认为你可以使用 request module 。示例:

var request = require('request')
//declare this inside your route if you want to send some parameters you can use formData it accepts get or post requests
request.post(config.API_HOST + req.url, formData : { field : 'something' }, function(err, response, body) {
//here you have the response from the route with the token you generated
//and then you can pipe this to the proxy or send the token via res
res.send({ token : response.token }) //or use res.cookie('token', response.token)
}

有了这个,您可以创建一个请求,并在将数据发送到第一个响应之前将所有内容返回给您,不要忘记处理 err 参数!

关于javascript - api请求成功后如何在express中设置cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38210019/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com