# oauth2.0 **Repository Path**: wx_60f84e77c5/oauth2.0 ## Basic Information - **Project Name**: oauth2.0 - **Description**: TP6 OAuth2.0 - **Primary Language**: PHP - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2021-01-19 - **Last Updated**: 2021-01-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README TP6 OAuth2.0 =============== > 运行环境要求PHP7.1+。 ## 安装 1.gitee clone 代码 [仓库地址](https://gitee.com/bokly/oauth2.0.git) ~~~ git clone https://gitee.com/bokly/oauth2.0.git cd oauth2.0 ~~~ 2.composer 安装TP等依赖包 ~~~ composer install ~~~ 3.创建数据库 oauth,已有数据库省略此步 4.修改根目录中.env,配置数据库连接信息 5.think 命令创建表,添加数据 ~~~ //已有数据库,已有 user 表,可删除 database/migrations/xxxx_user.php 文件 php think migrate:run //已有数据库,已有 user 表,可删除 database/seeds/XxxUser.php 文件 php think seed:run ~~~ ## 已有数据库的看下面6.7步骤 6.修改配置文件 config/database.php ~~~ 'oatuh_user_table' => 'user表名' ~~~ 7.重写 app/api/model/OAuthModel.php 加密验证规则 ~~~ public function hashPassword($password) { return parent::hashPassword($password); // TODO: 如果有自己的加密规则,重写此方法 } public function checkPassword($user, $password) { return parent::checkPassword($user, $password); // TODO: 如果有自己的加密规则,重写此方法 } ~~~ 8.配置域名 xxx.com 指向 public/api.php 9.修改 oauth_clients 表 redirect_uri 为你配置的域名 10.访问 xxx.com?authorize?redirect_uri=http://xxx.com&client_id=testclient&response_type=code&state=1 11.输入 用户名 test, 密码 123456,登录,跳转到 redirect_uri,地址栏有code //已有用户数据的重写验证规则后,填写自有用户数据 12.Postman 或者其他工具POST请求 http://xxx.com/token //测试时如有提示code过期("The authorization code has expired"),可修改 config/database.php auth_code_lifetime 的值,测试完成后修改为30 ~~~ grant_type:authorization_code client_id:testclient client_secret:testpass code:33339de0befe7847645d303ef9df23cb16dbc53e redirect_uri:http://xxx.com ~~~