返回顶部
首页 > 资讯 > 前端开发 > JavaScript >vue实现GitHub的第三方授权方法示例
  • 949
分享到

vue实现GitHub的第三方授权方法示例

2024-04-02 19:04:59 949人浏览 安东尼
摘要

目录创建OAuth Apps 获取code 获取access_token 获取用户信息 最近在完善我的博客系统,突然想到从原本临时填写 name + email 进行评论改成使用Gi

最近在完善我的博客系统,突然想到从原本临时填写 name + email 进行评论改成使用GitHub授权登陆以发表评论。
废话不多说,直接奔入主题

温馨提示:本文章只满足个人使用需求,如果需要学习更详细的使用方法,可访问 OAuth官方文档。

创建OAuth Apps

首先,你需要一个gitHub账户然后前往GitHub developers,根据要求填写完成之后,会自动生成Client_ID和Client Secret,在之后的步骤中会用到。

获取code


//method
async githubLogin() {
 windows.location.href = 
    "https://github.com/login/oauth/authorize?client_id = your_client_id&redirect_uri=your_redirect_uri"
}

<a href="Https://github.com/login/oauth/authorize?client_id = your_client_id&redirect_uri=your_redirect_uri">GitHub登陆</a>

路由参数中redirect_uri是可选的。如果省略,则GitHub将重定向到你在OAuth apps配置的回调路径。如果提供,则你所填写的redirect_uri必须是你在OAuth apps中配置的回调路径的子路径。如下:

CALLBACK: http://xx.com/github
GoOD: http://xx.com/github
GOOD: http://xx.com/github/path/path
BAD: http://xx.com/git
BAD: http://xxxxx.com/path

如果用户接受你的请求,将会跳转到redirect_uri,我们可以接受路由中的参数code,以进行下一步操作。


your_redirect_uri?code=xxx

获取access_token

我们需要client_id、client_secret和code来获取access_token。



this.$axiOS
 .get('/githubAccessToken',{
 params: {
  client_id: your_client_id,
  client_secret: your_client_secret,
  code: your_code
  }
 })

默认情况下,你会获取如下响应:


access_token=xxxxx&token_type=bearer

如果你想用更方便的格式接收响应,你可以在headers中自定义Accept:


Accept: "application/JSON"
=> {"access_token":xxxxx,"token_type":bearer}

获取用户信息

获取access_token之后,我们就可以请求用户的部分信息了:



this.$axios
 .get('/githubUserInfo', {
  headers: {
    "Content-Type": "application/x-www-fORM-urlencoded",
    Accept: "application/json",
    Authorization: `token ${access_token}` //必填
  }
})

然后你便可以获取到用户信息了。

到此这篇关于Vue实现GitHub的第三方授权的文章就介绍到这了,更多相关vue实现GitHub的第三方授权内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网! 

--结束END--

本文标题: vue实现GitHub的第三方授权方法示例

本文链接: https://lsjlt.com/news/156242.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • vue实现GitHub的第三方授权方法示例
    目录创建OAuth Apps 获取code 获取access_token 获取用户信息 最近在完善我的博客系统,突然想到从原本临时填写 name + email 进行评论改成使用Gi...
    99+
    2024-04-02
  • 实现 Google 第三方授权登录
    最近做项目要实现Google的第三方登录,这简单的记录一下。 目前Google的第三方登录有很多方案,且官方提供SDK方便接入。但是我这个项目同时要实现网页和客户端。所以选择了 Google OAuth 2.0 的方案。 当然,也可以 《...
    99+
    2023-10-07
    服务器 前端
  • Django之第三方平台QQ授权登录的实现
    目录环境准备创建QQ互联应用创建应用模块定义QQ登录模型类执行迁移QQLoginTool库API使用说明QQ登录扫码页面认证获取openidopenid的判断处理openid是否绑定...
    99+
    2023-05-19
    Django 第三方平台QQ授权登录 Django 授权登录
  • Vue实现Google第三方登录的示例代码
    目录一、开发者平台配置解决问题BUG一、开发者平台配置 1、进入开发者平台,首先前往Google API 控制台选择或者创建一个项目 谷歌开发者平台 一堆眼花缭乱的API让你...
    99+
    2024-04-02
  • Java中OAuth2.0第三方授权原理与实战
    目录RFC6749OAuth 2.0授权4大模式合同到期后的续约机制OAuth2.0第三方授权实战oauth-clientoauth-serverRFC6749 OAuth2的官方文...
    99+
    2024-04-02
  • node如何实现github第三方登录
    这篇文章主要介绍了node如何实现github第三方登录的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇node如何实现github第三方登录文章都会有所收获,下面我们一起来看看吧。一、详细流程二、具体流程1.注...
    99+
    2023-07-04
  • vue如何实现第三方请求
    本文小编为大家详细介绍“vue如何实现第三方请求”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue如何实现第三方请求”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。vue实现第三方请求的方法:1、通过“impo...
    99+
    2023-07-05
  • 浅析node是怎么实现github第三方登录的
    一、详细流程二、具体流程1.注册应用①登录github,Settings=>Developer settings=>OAuth Apps=>Register a new application ②填写应用信息③注册完成,得...
    99+
    2022-11-22
    nodejs​ node
  • Android实现第三方授权登录、分享以及获取用户资料
    由于公司项目的需要,要实现在项目中使用第三方授权登录以及分享文字和图片等这样的效果,几经波折,查阅了一番资料,做了一个Demo。实现起来的效果还是不错的,不敢独享,决定写一个总...
    99+
    2022-06-06
    授权 Android
  • Springboot整合第三方登录功能的实现示例
    springboot 项目的pom文件引入依赖 <dependency> <groupId>me.zhyd.oauth</groupId>...
    99+
    2024-04-02
  • Vue如何实现Google第三方登录
    这篇文章主要介绍了Vue如何实现Google第三方登录的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue如何实现Google第三方登录文章都会有所收获,下面我们一起来看看吧。...
    99+
    2024-04-02
  • Android实现授权访问网页的方法
    本文实例讲述了Android授权访问网页的实现方法,即使用Webview显示OAuth Version 2.a ImplicitGrant方式授权的页,但是对于移动终端不建议使...
    99+
    2022-06-06
    方法 授权 Android
  • Java微信授权登陆的实现示例
    前提: 微信公众平台:注册微信认证的公众号也就是服务号 ,拥有跟高级权限的微信接口。(注册服务号需要一些企业信息,需自己或者公司解决) 注: 2018年12月起 订阅号不能认证升级为...
    99+
    2024-04-02
  • Android中EditText屏蔽第三方输入法表情的方法示例
    前言 众所周知如果用第三方的输入法的表情会给开发带来一定的麻烦,一般地像服务器上传的字符都是普通的字符,但是测试,就是狠狠得拿出搜狗输入法,点几个表情,那么问题就来了,要么是显...
    99+
    2022-06-06
    edittext 输入 示例 方法 输入法 Android
  • Java接入支付宝授权第三方登录的完整步骤
    开发前准备 支付宝开发平台. 支付宝沙箱环境申请使用 !!!重点 授权回调地址必须要写全路径也就是controller最终路径(下面有具体细节) RSA2的密钥生成: 支付宝提供...
    99+
    2024-04-02
  • Vue动画之第三方类库实现动画方式
    目录Vue第三方类库实现动画vue中常用的动画库animista-可直接插入使用AOS.js滚动动画库禁用AOS总结Vue第三方类库实现动画 注意: 1.使用了Animate类库,方...
    99+
    2023-05-16
    Vue动画 Vue第三方类库 Vue实现动画
  • 实例详解Java调用第三方接口方法
    目录一、 通过JDK网络类Java.net.HttpURLConnection1.java.net包下的原生java api提供的http请求2.HttpClientUtil工具类3...
    99+
    2024-04-02
  • vue+elementUI实现内嵌table的方法示例
    在大四实习工作中碰到一个比较特别的需求,要求在一个 table 表格中点击一条数据的编号,在该条数据下方出现一个新的 table 表格。这个需求在 element UI 的官方文档...
    99+
    2024-04-02
  • vuex 第三方包实现数据持久化的方法
    目的: 让在vuex中管理的状态数据同时存储在本地。可免去自己存储的环节。 在开发的过程中,像用户信息(名字,头像,token)需要vuex中存储且需要本地存储。 ...
    99+
    2024-04-02
  • vue封装第三方插件并发布到npm的示例分析
    小编给大家分享一下vue封装第三方插件并发布到npm的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!gitmentgit...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作