github身份验证后返回令牌的最佳方法

时间:2016-02-24 06:55:19

标签: angularjs node.js passport.js

我有一个角度应用程序,它使用passport-github2和oauth2进行身份验证并获得对github资源的访问权限。我正在使用nodejs,koa和passport github,我的服务器代码在github调用的回调中看起来有点像这样:

router.get('/auth/github/callback', function* (next) {
  const ctx = this;

  yield passport.authenticate('github', {
    failureRedirect: '/login'
  }, function* (err, profile, failed) {
    if(!err && profile) {
      const token = jwtHelper(profile);
      ctx.redirect(config.client.syncUrl + '?token=' + token);  

在有角度的前端,我会做这样的事情来获得令牌:

const token = location.query.token

我宁愿在回复标题中发送令牌,但我不知道如何在前端角度代码中拉出标题。

是否可以以这种方式使用响应头?

1 个答案:

答案 0 :(得分:0)

来自koa's documentation

response.set(字段,值)

将响应标头字段设置为值:

this.set('Cache-Control', 'no-cache');

所以在你的情况下它应该是这样的:

ctx.set('Token', token)