Skip to content

Commit

Permalink
📝 编写文档
Browse files Browse the repository at this point in the history
  • Loading branch information
zhangyd-c committed Aug 23, 2019
1 parent 10df9f0 commit 16f77ec
Show file tree
Hide file tree
Showing 8 changed files with 264 additions and 9 deletions.
167 changes: 167 additions & 0 deletions README.en-US.md

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,8 @@ _请知悉:经咨询CSDN官方客服得知,CSDN的授权开放平台已经

## 关于OAuth

[The OAuth 2.0 Authorization Framework](https://tools.ietf.org/html/rfc6749)
- [The OAuth 2.0 Authorization Framework](https://tools.ietf.org/html/rfc6749)
- [OAuth 2.0](https://oauth.net/2/)

## 关注&交流

Expand Down
4 changes: 4 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,10 @@ JustAuth,如你所见,它仅仅是一个**第三方授权登录**的**工具
1. ****:已集成十多家第三方平台(国内外常用的基本都已包含),后续依然还有扩展计划!
2. ****:API就是奔着最简单去设计的,尽量让您用起来没有障碍感!

## 项目关注度趋势

[![Stargazers over time](https://starchart.cc/justauth/JustAuth.svg)](https://starchart.cc/justauth/JustAuth)

## 已集成的平台

| :computer: 平台 | :coffee: API类 | :page_facing_up: SDK |
Expand Down
9 changes: 5 additions & 4 deletions docs/_sidebar.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
- [入门](README.md)
- [更新记录](update.md)
- 引导
- [如何使用JustAuth集成一个平台](how-to-use.md)
- [概述](README.md)
- 快速开始
- [名词解释](explain.md)
- [如何使用](how-to-use.md)
- [获取授权链接](authorize.md)
- [登录](login.md)
- 其他特性
Expand All @@ -10,3 +10,4 @@
- [配套项目](supporting.md)
- [Q&A](Q&A.md)
- [Who is using](users.md)
- [更新记录](update.md)
29 changes: 29 additions & 0 deletions docs/explain.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
本文将就JustAuth中涉及到的一些配置、关键词做一下简单说明,方便使用者理解、使用。

## 本文相关名词

- `调用者` 指使用`JustAuth`的开发者
- `第三方` 指开发者对接的第三方网站,比如:QQ平台、微信平台、微博平台
- `用户` 指最终服务的真实用户

## JustAuth中的关键词

以下内容了解后,将会使你更容易地上手JustAuth。

- `clientId` 客户端身份标识符(应用id),一般在申请完Oauth应用后,由**第三方平台颁发**,唯一
- `clientSecret` 客户端密钥,一般在申请完Oauth应用后,由**第三方平台颁发**
- `redirectUri` **调用者项目中的有效api地址**。用户在确认第三方平台授权(登录)后,第三方平台会重定向到该地址,并携带code等参数
- `state` 用来保持授权会话流程完整性,防止CSRF攻击的安全的随机的参数,由**调用者生成**
- `alipayPublicKey` 支付宝公钥。当选择支付宝登录时,必传该值,由**调用者生成**
- `unionId` 是否需要申请unionid,目前只针对**qq登录**。注:qq授权登录时,获取unionid需要单独发送邮件申请权限。如果个人开发者账号中申请了该权限,可以将该值置为true,在获取openId时就会同步获取unionId。参考链接:[UnionID介绍](http://wiki.connect.qq.com/unionid%E4%BB%8B%E7%BB%8D)
- `stackOverflowKey` Stack Overflow 登陆时需单独提供的key,由**第三方平台颁发**
- `agentId` 企业微信登陆时需单独提供该值,由**第三方平台颁发**,为授权方的网页应用ID
- `source` JustAuth支持的第三方平台,比如:GITHUB、GITEE等

## 参考资料

关于OAuth2相关的内容、原理可以自行参阅以下资料:

- [The OAuth 2.0 Authorization Framework](https://tools.ietf.org/html/rfc6749)
- [OAuth 2.0](https://oauth.net/2/)

34 changes: 32 additions & 2 deletions docs/how-to-use.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,33 @@
# 如何使用JustAuth集成一个平台
在前面有介绍到,JustAuth的特点之一就是****,极简主义,不给使用者造成不必要的障碍。

待补充
既然牛皮吹下了, 那么如何才能用JustAuth实现第三方登录呢?

使用JustAuth总共分三步(**这三步也适合于任何一个支持的平台**):

1. 申请注册第三方平台的开发者账号
2. 创建第三方平台的应用,获取配置信息(id, secret, callbackUrl)
3. 使用该工具实现授权登陆


- 引入依赖
```xml
<dependency>
<groupId>me.zhyd.oauth</groupId>
<artifactId>JustAuth</artifactId>
<version>1.10.1</version>
</dependency>
```
- 调用api
```java
// 创建授权request
AuthRequest authRequest = new AuthGiteeRequest(AuthConfig.builder()
.clientId("clientId")
.clientSecret("clientSecret")
.redirectUri("redirectUri")
.build());
// 生成授权页面
authRequest.authorize();
// 授权登录后会返回code(auth_code(仅限支付宝))、state,1.8.0版本后,可以用AuthCallback类作为回调接口的参数
// 注:JustAuth默认保存state的时效为3分钟,3分钟内未使用则会自动清除过期的state
authRequest.login(callback);
```
23 changes: 23 additions & 0 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,29 @@
auto2top: true,
coverpage: true,
formatUpdated: '{YYYY}/{MM}/{DD} {HH}:{mm}:{ss}',
plugins: [
function (hook, vm) {
var footer = [
'<hr/>',
'<footer>',
'<span>JustAuth: <a href="https://github.com/justauth/JustAuth">Github</a> | <a href="https://gitee.com/yadong.zhang/JustAuth">Gitee</a> &copy;2019.</span>',
'<span>Proudly published with <a href="https://github.com/docsifyjs/docsify" target="_blank">docsify</a>.</span>',
'</footer>'
].join('');
hook.afterEach(function (html) {
return html + footer
});
hook.beforeEach(function (html) {
var url = 'https://gitee.com/yadong.zhang/JustAuth/tree/master/docs/' + vm.route.file;
var editHtml = '[📝 编辑该文档](' + url + ')\n';

return html
+ '\n----\n'
+ 'Last modified {docsify-updated} '
+ editHtml
})
}
]
}
</script>
<script src="//unpkg.com/docsify/lib/docsify.min.js"></script>
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/me/zhyd/oauth/config/AuthConfig.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@
public class AuthConfig {

/**
* 客户端id:对应个平台的appKey
* 客户端id:对应各平台的appKey
*/
private String clientId;

/**
* 客户端Secret:对应个平台的appSecret
* 客户端Secret:对应各平台的appSecret
*/
private String clientSecret;

Expand Down

0 comments on commit 16f77ec

Please sign in to comment.