Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
P
promotion-service
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
promotion
promotion-service
Commits
585fdb6b
提交
585fdb6b
authored
3月 11, 2025
作者:
李秋林
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
后台接口获取小程序openid\phone\accessToken
上级
b2442f74
隐藏空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
48 行增加
和
10 行删除
+48
-10
MiappInfoController.java
...lu/promotion/controller/user/tem/MiappInfoController.java
+18
-4
TencentUtils.java
...ain/java/com/wangxiaolu/promotion/utils/TencentUtils.java
+27
-3
application-dev.yml
src/main/resources/application-dev.yml
+1
-1
application-live.yml
src/main/resources/application-live.yml
+1
-1
application-qa.yml
src/main/resources/application-qa.yml
+1
-1
没有找到文件。
src/main/java/com/wangxiaolu/promotion/controller/user/tem/MiappInfoController.java
浏览文件 @
585fdb6b
...
@@ -7,6 +7,8 @@ import org.springframework.web.bind.annotation.GetMapping;
...
@@ -7,6 +7,8 @@ import org.springframework.web.bind.annotation.GetMapping;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.Map
;
/**
/**
* @author : liqiulin
* @author : liqiulin
* @date : 2025-03-07 13
* @date : 2025-03-07 13
...
@@ -20,11 +22,23 @@ public class MiappInfoController {
...
@@ -20,11 +22,23 @@ public class MiappInfoController {
private
TencentUtils
tencentUtils
;
private
TencentUtils
tencentUtils
;
/**
/**
* 获取小程序
- 小卤通
信息
* 获取小程序信息
* @return
* @return
*/
*/
@GetMapping
(
"/xlt"
)
@GetMapping
(
"/wxtoken"
)
public
R
getXLT
()
{
public
R
getCX
()
{
return
R
.
success
(
tencentUtils
.
getXltMini
());
Map
<
String
,
String
>
cxInfo
=
tencentUtils
.
getCX
();
return
R
.
success
(
tencentUtils
.
getMiniappToken
(
cxInfo
));
}
@GetMapping
(
"/phone"
)
public
R
getPhone
(
String
accessToken
,
String
code
){
return
R
.
success
(
tencentUtils
.
getUserPhoneByAccessToken
(
accessToken
,
code
));
}
@GetMapping
(
"/openid"
)
public
R
getOpenid
(
String
jsCode
){
Map
<
String
,
String
>
cxInfo
=
tencentUtils
.
getCX
();
return
R
.
success
(
tencentUtils
.
getOpenid
(
jsCode
,
cxInfo
));
}
}
}
}
src/main/java/com/wangxiaolu/promotion/utils/TencentUtils.java
浏览文件 @
585fdb6b
package
com
.
wangxiaolu
.
promotion
.
utils
;
package
com
.
wangxiaolu
.
promotion
.
utils
;
import
cn.hutool.http.HttpUtil
;
import
com.alibaba.fastjson.JSONObject
;
import
com.tencentcloudapi.common.Credential
;
import
com.tencentcloudapi.common.Credential
;
import
com.tencentcloudapi.common.exception.TencentCloudSDKException
;
import
com.tencentcloudapi.common.exception.TencentCloudSDKException
;
import
com.tencentcloudapi.common.profile.ClientProfile
;
import
com.tencentcloudapi.common.profile.ClientProfile
;
...
@@ -11,6 +13,7 @@ import com.tencentcloudapi.sms.v20210111.models.SendStatus;
...
@@ -11,6 +13,7 @@ import com.tencentcloudapi.sms.v20210111.models.SendStatus;
import
com.wangxiaolu.promotion.exception.ParamException
;
import
com.wangxiaolu.promotion.exception.ParamException
;
import
com.wangxiaolu.promotion.result.basedata.RCode
;
import
com.wangxiaolu.promotion.result.basedata.RCode
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
okhttp3.OkHttpClient
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.groovy.util.Maps
;
import
org.apache.groovy.util.Maps
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
...
@@ -52,12 +55,12 @@ public class TencentUtils {
...
@@ -52,12 +55,12 @@ public class TencentUtils {
private
long
overdueLong
;
private
long
overdueLong
;
// 小卤通信息
// 小卤通信息
@Value
(
"${wx.
xlt
_miniapp.app_id}"
)
@Value
(
"${wx.
cx
_miniapp.app_id}"
)
private
String
xltAppId
;
private
String
xltAppId
;
@Value
(
"${wx.
xlt
_miniapp.app_secret}"
)
@Value
(
"${wx.
cx
_miniapp.app_secret}"
)
private
String
xltAppSecret
;
private
String
xltAppSecret
;
public
Map
<
String
,
String
>
get
XltMini
()
{
public
Map
<
String
,
String
>
get
CX
()
{
return
Maps
.
of
(
"appId"
,
xltAppId
,
"appSecret"
,
xltAppSecret
);
return
Maps
.
of
(
"appId"
,
xltAppId
,
"appSecret"
,
xltAppSecret
);
}
}
/**
/**
...
@@ -139,4 +142,25 @@ public class TencentUtils {
...
@@ -139,4 +142,25 @@ public class TencentUtils {
}
}
}
}
public
JSONObject
getMiniappToken
(
Map
<
String
,
String
>
miniappInfo
)
{
String
url
=
"https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="
+
miniappInfo
.
get
(
"appId"
)+
"&secret="
+
miniappInfo
.
get
(
"appSecret"
);
String
body
=
HttpUtil
.
createGet
(
url
).
execute
().
body
();
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
body
);
jsonObject
.
putAll
(
miniappInfo
);
return
jsonObject
;
}
public
JSONObject
getUserPhoneByAccessToken
(
String
accessToken
,
String
code
)
{
JSONObject
param
=
new
JSONObject
();
param
.
put
(
"code"
,
code
);
String
url
=
"https://api.weixin.qq.com/wxa/business/getuserphonenumber?access_token="
+
accessToken
;
String
body
=
HttpUtil
.
createPost
(
url
).
body
(
param
.
toString
()).
execute
().
body
();
return
JSONObject
.
parseObject
(
body
);
}
public
JSONObject
getOpenid
(
String
jsCode
,
Map
<
String
,
String
>
miniappInfo
)
{
String
url
=
"https://api.weixin.qq.com/sns/jscode2session?appid="
+
miniappInfo
.
get
(
"appId"
)+
"&secret="
+
miniappInfo
.
get
(
"appSecret"
)+
"&js_code="
+
jsCode
+
"&grant_type=authorization_code"
;
String
body
=
HttpUtil
.
createGet
(
url
).
execute
().
body
();
return
JSONObject
.
parseObject
(
body
);
}
}
}
src/main/resources/application-dev.yml
浏览文件 @
585fdb6b
...
@@ -44,7 +44,7 @@ wx:
...
@@ -44,7 +44,7 @@ wx:
token_secret
:
sXwHPj#U#xmim^ts
token_secret
:
sXwHPj#U#xmim^ts
employee
:
employee
:
token_secret
:
xZq%kXASSPD$UtL
token_secret
:
xZq%kXASSPD$UtL
xlt
_miniapp
:
cx
_miniapp
:
app_id
:
wxac14dc7765484d7d
app_id
:
wxac14dc7765484d7d
app_secret
:
b3315e66608a397f88e7e82b8f950bcd
app_secret
:
b3315e66608a397f88e7e82b8f950bcd
...
...
src/main/resources/application-live.yml
浏览文件 @
585fdb6b
...
@@ -43,7 +43,7 @@ wx:
...
@@ -43,7 +43,7 @@ wx:
token_secret
:
sXwHPj#U#xmim^ts
token_secret
:
sXwHPj#U#xmim^ts
employee
:
employee
:
token_secret
:
xZq%kXASSPD$UtL
token_secret
:
xZq%kXASSPD$UtL
xlt
_miniapp
:
cx
_miniapp
:
app_id
:
wxac14dc7765484d7d
app_id
:
wxac14dc7765484d7d
app_secret
:
b3315e66608a397f88e7e82b8f950bcd
app_secret
:
b3315e66608a397f88e7e82b8f950bcd
tengxunyun
:
tengxunyun
:
...
...
src/main/resources/application-qa.yml
浏览文件 @
585fdb6b
...
@@ -44,7 +44,7 @@ wx:
...
@@ -44,7 +44,7 @@ wx:
token_secret
:
sXwHPj#U#xmim^ts
token_secret
:
sXwHPj#U#xmim^ts
employee
:
employee
:
token_secret
:
xZq%kXASSPD$UtL
token_secret
:
xZq%kXASSPD$UtL
xlt
_miniapp
:
cx
_miniapp
:
app_id
:
wxac14dc7765484d7d
app_id
:
wxac14dc7765484d7d
app_secret
:
b3315e66608a397f88e7e82b8f950bcd
app_secret
:
b3315e66608a397f88e7e82b8f950bcd
tengxunyun
:
tengxunyun
:
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论