如何从 auth-module、Nuxt.js 获取 access_token
Posted
技术标签:
【中文标题】如何从 auth-module、Nuxt.js 获取 access_token【英文标题】:How can I get access_token from auth-module, Nuxt.js 【发布时间】:2019-08-21 03:49:26 【问题描述】:我尝试使用 auth-module 以下链接使用 Nuxt.js 构建 Facebook 登录。
https://github.com/nuxt-community/auth-module
我无法获得“access_token”。代码如下。
// pages/login.vue
export default
methods:
this.$auth.loginWith('facebook')
回调 URI 是这样的。
https://localhost:3000/facebook/oauth_callback/?#access_token=***&data_access_expiration_time=1561715202&expires_in=4398&reauthorize_required_in=7776000&state=MC4xOTU3MDM2ODIxMzIzOTA5OA
// pages/facebook/oauth_callback/index.vue
<template>
<section>
<p> this.$auth.$state </p>
<p> this.$route.query </p
</section>
</template>
this.$auth.$state 不包含“access_token”。我怎样才能获得“access_token”? 我也不明白为什么 URI 在获取参数字段中包含“#”。因此,我无法从“this.$route.query”中获取 access_token。
【问题讨论】:
【参考方案1】:最后,我可以用下面的代码做到这一点。
this.$auth.getToken('facebook')
感谢大家观看。
【讨论】:
感谢您提出这个有用的问题。我如何在服务器端使用它?当我在asyncData
中使用此代码时,它返回undefined
试试这个代码。可能你可以使用这个。 asyncData( app ) app.$auth.getToken('facebook') 【参考方案2】:
这对我有用:
this.$auth.strategy.token.get()
来源:github.com/nuxt-community/auth-module
它可能仅适用于dev 版本。
【讨论】:
以上是关于如何从 auth-module、Nuxt.js 获取 access_token的主要内容,如果未能解决你的问题,请参考以下文章
vue + nuxt.js - 如何读取从外部请求接收到的 POST 请求参数
如何从 nuxt.js 页头的 node_modules 文件夹中引用 js 文件