代码行为类似于loopback4中的response.redirect吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代码行为类似于loopback4中的response.redirect吗?相关的知识,希望对你有一定的参考价值。
我是loopback4的新手。我正在开发代码以获取Google访问令牌。如何实现Express重定向等功能?
我已经成功地用express实现了它。现在我想将它实现为loopback4的一个独特功能。
基于Express的代码(已经工作)
router.get('/googleiab/token/request', function (req, res) {
let oauth2Client = new OAuth2(client_id, client_secret, redirect_uri);
let url = oauth2Client.generateAuthUrl({
access_type: 'offline',
scope: scopes,
});
res.redirect(url);
});
环回4
@get('/googleiab/token/request')
tockenRequest(): void {
let oauth2Client = new OAuth2(client_id, client_secret, redirect_uri);
let url = oauth2Client.generateAuthUrl({
access_type: 'offline',
scope: scopes,
});
this.redirect('/googleiab/token/request', url, 301); //res.redirect(url);
//return url;
}
这将重定向到指定的Url。
答案
您需要为此目的使用RequestContext。
见下文。
将此注入添加到构造函数中
@inject(RestBindings.Http.CONTEXT)
protected reqContext: RequestContext
然后在你的tockenRequest方法中执行此操作。
@get('/googleiab/token/request')
tockenRequest(): void {
let oauth2Client = new OAuth2(client_id, client_secret, redirect_uri);
let url = oauth2Client.generateAuthUrl({
access_type: 'offline',
scope: scopes,
});
this.reqContext.response.redirect(url);
}
希望有所帮助。
以上是关于代码行为类似于loopback4中的response.redirect吗?的主要内容,如果未能解决你的问题,请参考以下文章
让 Enter 键的行为类似于 QTableWidget 中的 Tab
如何制作点“。”和下划线 '_' 的行为类似于 MongoDB 中 $text 索引中的空格
如何使 UIPageViewController 过渡行为类似于 IOS7 中的交互式弹出过渡样式