Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
alading2018
ShopXO
提交
7489a0fc
ShopXO
项目概览
alading2018
/
ShopXO
与 Fork 源项目一致
Fork自
纵之格 / ShopXO
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
ShopXO
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
7489a0fc
编写于
11月 19, 2021
作者:
G
gongfuxiang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
小程序登陆授权优化
上级
77b8f81a
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
39 addition
and
27 deletion
+39
-27
app/api/controller/User.php
app/api/controller/User.php
+8
-8
app/service/AppMiniUserService.php
app/service/AppMiniUserService.php
+8
-8
extend/base/Baidu.php
extend/base/Baidu.php
+6
-2
extend/base/QQ.php
extend/base/QQ.php
+8
-4
extend/base/Toutiao.php
extend/base/Toutiao.php
+3
-3
extend/base/Wechat.php
extend/base/Wechat.php
+6
-2
未找到文件。
app/api/controller/User.php
浏览文件 @
7489a0fc
...
...
@@ -383,7 +383,7 @@ class User extends Common
if
(
$result
[
'status'
]
==
0
)
{
// 先从数据库获取用户信息
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'baidu_openid'
,
$result
);
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'baidu_openid'
,
$result
[
'data'
][
'openid'
]
);
if
(
!
empty
(
$user
))
{
// 用户状态
...
...
@@ -395,7 +395,7 @@ class User extends Common
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
$user
);
}
}
else
{
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
[
'data'
]]);
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
[
'data'
]
[
'openid'
]
]);
}
}
else
{
$ret
=
DataReturn
(
$result
[
'msg'
],
-
10
);
...
...
@@ -488,10 +488,10 @@ class User extends Common
if
(
$result
[
'status'
]
==
0
)
{
// 先从数据库获取用户信息
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'toutiao_openid'
,
$result
);
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'toutiao_openid'
,
$result
[
'data'
][
'openid'
]
);
if
(
empty
(
$user
))
{
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
[
'data'
]]);
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
[
'data'
]
[
'openid'
]
]);
}
else
{
// 用户状态
$ret
=
UserService
::
UserStatusCheck
(
'id'
,
$user
[
'id'
]);
...
...
@@ -579,13 +579,13 @@ class User extends Common
{
// 授权
$result
=
(
new
\
base\QQ
(
MyC
(
'common_app_mini_qq_appid'
),
MyC
(
'common_app_mini_qq_appsecret'
)))
->
GetAuthSessionKey
(
$this
->
data_post
[
'authcode'
]);
if
(
$result
!==
false
)
if
(
$result
[
'status'
]
==
0
)
{
// 先从数据库获取用户信息
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'qq_openid'
,
$result
);
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'qq_openid'
,
$result
[
'data'
][
'openid'
]
);
if
(
empty
(
$user
))
{
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
]);
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
[
'data'
][
'openid'
]
]);
}
else
{
// 用户状态
$ret
=
UserService
::
UserStatusCheck
(
'id'
,
$user
[
'id'
]);
...
...
@@ -597,7 +597,7 @@ class User extends Common
}
}
}
else
{
$ret
=
DataReturn
(
'授权登录失败'
,
-
10
0
);
$ret
=
DataReturn
(
$result
[
'msg'
],
-
1
0
);
}
}
else
{
$ret
=
DataReturn
(
'授权码为空'
,
-
1
);
...
...
app/service/AppMiniUserService.php
浏览文件 @
7489a0fc
...
...
@@ -251,7 +251,7 @@ class AppMiniUserService
if
(
$result
[
'status'
]
==
0
)
{
// 先从数据库获取用户信息
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'baidu_openid'
,
$result
);
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'baidu_openid'
,
$result
[
'data'
][
'openid'
]
);
if
(
!
empty
(
$user
))
{
// 用户状态
...
...
@@ -263,7 +263,7 @@ class AppMiniUserService
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
$user
);
}
}
else
{
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
[
'data'
]]);
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
[
'data'
]
[
'openid'
]
]);
}
}
else
{
$ret
=
DataReturn
(
$result
[
'msg'
],
-
10
);
...
...
@@ -373,10 +373,10 @@ class AppMiniUserService
if
(
$result
[
'status'
]
==
0
)
{
// 先从数据库获取用户信息
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'toutiao_openid'
,
$result
);
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'toutiao_openid'
,
$result
[
'data'
][
'openid'
]
);
if
(
empty
(
$user
))
{
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
[
'data'
]]);
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
[
'data'
]
[
'openid'
]
]);
}
else
{
// 用户状态
$ret
=
UserService
::
UserStatusCheck
(
'id'
,
$user
[
'id'
]);
...
...
@@ -461,13 +461,13 @@ class AppMiniUserService
{
// 授权
$result
=
(
new
\
base\QQ
(
MyC
(
'common_app_mini_qq_appid'
),
MyC
(
'common_app_mini_qq_appsecret'
)))
->
GetAuthSessionKey
(
$params
[
'authcode'
]);
if
(
$result
!==
false
)
if
(
$result
[
'status'
]
==
0
)
{
// 先从数据库获取用户信息
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'qq_openid'
,
$result
);
$user
=
UserService
::
AppUserInfoHandle
(
null
,
'qq_openid'
,
$result
[
'data'
][
'openid'
]
);
if
(
empty
(
$user
))
{
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
]);
$ret
=
DataReturn
(
'授权登录成功'
,
0
,
[
'is_user_exist'
=>
0
,
'openid'
=>
$result
[
'data'
][
'openid'
]
]);
}
else
{
// 用户状态
$ret
=
UserService
::
UserStatusCheck
(
'id'
,
$user
[
'id'
]);
...
...
@@ -479,7 +479,7 @@ class AppMiniUserService
}
}
}
else
{
$ret
=
DataReturn
(
'授权登录失败'
,
-
10
0
);
$ret
=
DataReturn
(
$result
[
'msg'
],
-
1
0
);
}
}
else
{
$ret
=
DataReturn
(
'授权码为空'
,
-
1
);
...
...
extend/base/Baidu.php
浏览文件 @
7489a0fc
...
...
@@ -144,6 +144,10 @@ class Baidu
'sk'
=>
$this
->
_appsecret
,
];
$result
=
json_decode
(
$this
->
HttpRequestPost
(
'https://spapi.baidu.com/oauth/jscode2sessionkey'
,
$data
),
true
);
if
(
empty
(
$result
))
{
return
[
'status'
=>-
1
,
'msg'
=>
'授权接口调用失败'
];
}
if
(
!
empty
(
$result
[
'openid'
]))
{
// 缓存SessionKey
...
...
@@ -151,9 +155,9 @@ class Baidu
// 缓存存储
MyCache
(
$key
,
$result
);
return
[
'status'
=>
0
,
'msg'
=>
'授权成功'
,
'data'
=>
$result
[
'openid'
]
];
return
[
'status'
=>
0
,
'msg'
=>
'授权成功'
,
'data'
=>
$result
];
}
return
[
'status'
=>-
1
,
'msg'
=>
$result
[
'error_description'
]];
return
[
'status'
=>-
1
,
'msg'
=>
empty
(
$result
[
'error_description'
])
?
'授权接口异常错误'
:
$result
[
'error_description'
]];
}
/**
...
...
extend/base/QQ.php
浏览文件 @
7489a0fc
...
...
@@ -107,16 +107,20 @@ class QQ
// 请求获取session_key
$url
=
'https://api.q.qq.com/sns/jscode2session?appid='
.
$this
->
_appid
.
'&secret='
.
$this
->
_appsecret
.
'&js_code='
.
$authcode
.
'&grant_type=authorization_code'
;
$result
=
$this
->
HttpRequestGet
(
$url
);
if
(
!
empty
(
$result
)
&&
!
empty
(
$result
[
'openid'
]
))
if
(
empty
(
$result
))
{
// 从缓存获取用户信息
return
[
'status'
=>-
1
,
'msg'
=>
'授权接口调用失败'
];
}
if
(
!
empty
(
$result
[
'openid'
]))
{
// 缓存SessionKey
$key
=
'qq_user_login_'
.
$result
[
'openid'
];
// 缓存存储
MyCache
(
$key
,
$result
);
return
$result
[
'openid'
];
return
[
'status'
=>
0
,
'msg'
=>
'授权成功'
,
'data'
=>
$result
];
}
return
false
;
return
[
'status'
=>-
1
,
'msg'
=>
empty
(
$result
[
'errmsg'
])
?
'授权接口异常错误'
:
$result
[
'errmsg'
]]
;
}
/**
...
...
extend/base/Toutiao.php
浏览文件 @
7489a0fc
...
...
@@ -56,11 +56,11 @@ class Toutiao
// 获取授权
$url
=
'https://developer.toutiao.com/api/apps/jscode2session?appid='
.
$this
->
config
[
'appid'
]
.
'&secret='
.
$this
->
config
[
'secret'
]
.
'&code='
.
$params
[
'authcode'
];
$result
=
json_decode
(
RequestGet
(
$url
),
true
);
if
(
empty
(
$result
[
'openid'
]))
if
(
empty
(
$result
)
||
empty
(
$result
[
'openid'
]))
{
return
[
'status'
=>-
1
,
'msg'
=>
$result
[
'errmsg'
]];
return
[
'status'
=>-
1
,
'msg'
=>
empty
(
$result
[
'errmsg'
])
?
'授权接口异常错误'
:
$result
[
'errmsg'
]];
}
return
[
'status'
=>
0
,
'msg'
=>
'授权成功'
,
'data'
=>
$result
[
'openid'
]
];
return
[
'status'
=>
0
,
'msg'
=>
'授权成功'
,
'data'
=>
$result
];
}
/**
...
...
extend/base/Wechat.php
浏览文件 @
7489a0fc
...
...
@@ -111,7 +111,11 @@ class Wechat
// 请求获取session_key
$url
=
'https://api.weixin.qq.com/sns/jscode2session?appid='
.
$this
->
_appid
.
'&secret='
.
$this
->
_appsecret
.
'&js_code='
.
$params
[
'authcode'
]
.
'&grant_type=authorization_code'
;
$result
=
$this
->
HttpRequestGet
(
$url
);
if
(
!
empty
(
$result
)
&&
!
empty
(
$result
[
'openid'
]))
if
(
empty
(
$result
))
{
return
[
'status'
=>-
1
,
'msg'
=>
'授权接口调用失败'
];
}
if
(
!
empty
(
$result
[
'openid'
]))
{
// 缓存SessionKey
$key
=
'wechat_user_login_'
.
$result
[
'openid'
];
...
...
@@ -120,7 +124,7 @@ class Wechat
MyCache
(
$key
,
$result
);
return
[
'status'
=>
0
,
'msg'
=>
'授权成功'
,
'data'
=>
$result
];
}
return
[
'status'
=>-
1
,
'msg'
=>
$result
[
'errmsg'
]];
return
[
'status'
=>-
1
,
'msg'
=>
empty
(
$result
[
'errmsg'
])
?
'授权接口异常错误'
:
$result
[
'errmsg'
]];
}
/**
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录