切换导航条
此项目
正在载入...
登录
李忠强
/
temporaryfood
·
提交
转到一个项目
GitLab
转到仪表盘
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
邮件补丁
差异文件
浏览文件
作者
何书鹏
3 years ago
提交
a7623b32f01fa84c59a3664128652bcda558604a
1 个父辈
ddb7012f
优化授权获取手机号
隐藏空白字符变更
内嵌
并排对比
正在显示
1 个修改的文件
包含
5 行增加
和
5 行删除
application/api/controller/User.php
application/api/controller/User.php
查看文件 @
a7623b3
...
...
@@ -136,7 +136,6 @@ class User extends Api
* @ApiTitle (用户授权获取手机号)
* @ApiMethod (POST)
* @ApiHeaders (name=token, type=string, required=true, description="请求的Token")
* @ApiParams (name="sessionKey", type="string", required=true, description="小程序sessionKey")
* @ApiParams (name="iv", type="string", required=true, description="小程序iv")
* @ApiParams (name="encryptedData", type="string", required=true, description="小程序encryptedData")
* @ApiReturn ({
...
...
@@ -151,26 +150,27 @@ class User extends Api
{
$param
=
$this
->
request
->
param
();
$validate
=
new
\think\Validate
([
'sessionKey'
=>
'require'
,
'iv'
=>
'require'
,
'encryptedData'
=>
'require'
,
]);
$validate
->
message
([
'sessionKey.require'
=>
'sessionKey参数错误!'
,
'iv.require'
=>
'iv参数错误!'
,
'encryptedData.require'
=>
'encryptData参数错误!'
,
]);
if
(
!
$validate
->
check
(
$param
))
{
$this
->
error
(
$validate
->
getError
());
}
// 获取session_key
$user
=
$this
->
auth
->
getUser
();
$third
=
\app\api\model\Third
::
where
(
'user_id'
,
$user
[
'id'
])
->
field
(
'session_key'
)
->
find
();
empty
(
$third
)
&&
$this
->
error
(
'请先登录'
);
// 获取小程序配置
$app
=
Factory
::
miniProgram
([
'app_id'
=>
Config
::
get
(
'site.appid'
),
'secret'
=>
Config
::
get
(
'site.secret'
),
]);
$res
=
$app
->
encryptor
->
decryptData
(
$
param
[
'sessionK
ey'
],
$param
[
'iv'
],
$param
[
'encryptedData'
]);
$res
=
$app
->
encryptor
->
decryptData
(
$
third
[
'session_k
ey'
],
$param
[
'iv'
],
$param
[
'encryptedData'
]);
// 更新手机号
$user
=
$this
->
auth
->
getUser
();
$user
->
mobile
=
$res
[
'purePhoneNumber'
];
$user
->
save
();
$this
->
success
(
'授权成功'
,[
'mobile'
=>
$res
[
'purePhoneNumber'
]]);
...
...
请
注册
或
登录
后发表评论