xctc-utils 1.6.7 → 1.6.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/weixin/index.d.ts +1 -0
- package/dist/weixin/index.js +23 -4
- package/package.json +1 -1
package/dist/weixin/index.d.ts
CHANGED
package/dist/weixin/index.js
CHANGED
|
@@ -49,7 +49,7 @@ function getUrlCode(config) {
|
|
|
49
49
|
weixinConfig['codeKey'] = codeKey;
|
|
50
50
|
weixinConfig['stateKey'] = stateKey;
|
|
51
51
|
(0, index_1.useSessionStorage)("weixinConfig", weixinConfig);
|
|
52
|
-
var _b = weixinConfig.cryptoiv, cryptoiv = _b === void 0 ?
|
|
52
|
+
var _b = weixinConfig.cryptoiv, cryptoiv = _b === void 0 ? defaultIv : _b, _c = weixinConfig.cryptokey, cryptokey = _c === void 0 ? defaultKey : _c, _d = weixinConfig.debuggerStatus, debuggerStatus = _d === void 0 ? false : _d;
|
|
53
53
|
var search = loc.search; // ?code=0916SzFa1KH9TA0Ke7Ha1AQx6446SzFr&state=123
|
|
54
54
|
initSdk(); // 加载微信sdk环境
|
|
55
55
|
// 获取地址栏返回 code 参数值
|
|
@@ -57,18 +57,29 @@ function getUrlCode(config) {
|
|
|
57
57
|
// 默认第一次通过链接进入系统,没有code和state
|
|
58
58
|
var searchIndex = -1;
|
|
59
59
|
var stateIndex = -1;
|
|
60
|
+
var msgStr = "";
|
|
60
61
|
if (search) {
|
|
61
62
|
searchIndex = search.indexOf("code=");
|
|
62
63
|
stateIndex = search.indexOf("state=");
|
|
63
64
|
}
|
|
65
|
+
// 本地未存储微信授权 code 值, 并且地址栏携带有 code 值 ,则先存储该值
|
|
66
|
+
if (!localCode && searchIndex != -1) {
|
|
67
|
+
params.get({ keys: ['code', 'state'], cache: "session", key: cryptokey, iv: cryptoiv });
|
|
68
|
+
}
|
|
64
69
|
// 如果本地已经存储 微信授权返回的 code 值,证明用户在执行刷新操作,不再执行微信授权逻辑
|
|
65
70
|
if (localCode && stateIndex == -1 && searchIndex == -1) {
|
|
71
|
+
if (debuggerStatus) {
|
|
72
|
+
alert("本地已经存储 code ,不再执行微信授权逻辑");
|
|
73
|
+
}
|
|
66
74
|
return;
|
|
67
75
|
}
|
|
68
76
|
// 如果链接地址中带有code,证明执行微信授权登录,并返回授权所需的 code 参数
|
|
69
77
|
if (searchIndex >= 0) {
|
|
70
78
|
if (localCode) {
|
|
71
79
|
// localCode 存在,用户已执行微信跳转链接,用户可能执行当前网页的刷新操作
|
|
80
|
+
if (debuggerStatus) {
|
|
81
|
+
alert("searchIndex 》 0 ,本地已经存储 code ,不再执行微信授权逻辑");
|
|
82
|
+
}
|
|
72
83
|
return;
|
|
73
84
|
}
|
|
74
85
|
else {
|
|
@@ -76,6 +87,9 @@ function getUrlCode(config) {
|
|
|
76
87
|
var urlParamsData = (0, index_1.getSessionStorage)("urlParamsData") || "";
|
|
77
88
|
var codeData = ((_a = urlParamsData === null || urlParamsData === void 0 ? void 0 : urlParamsData.code) === null || _a === void 0 ? void 0 : _a.str) || ""; // 第一次进入系统为空
|
|
78
89
|
if (codeData) {
|
|
90
|
+
if (debuggerStatus) {
|
|
91
|
+
alert("地址栏携带code已完成本地存储 ,执行微信授权逻辑");
|
|
92
|
+
}
|
|
79
93
|
login(codeData);
|
|
80
94
|
}
|
|
81
95
|
}
|
|
@@ -84,9 +98,16 @@ function getUrlCode(config) {
|
|
|
84
98
|
// 用户通过分享链接进入系统,此时含有 state 参数 , 无code参数
|
|
85
99
|
if (stateIndex >= 0) {
|
|
86
100
|
// 将 state进行本地存储,存储完成后跳转到微信授权页面
|
|
101
|
+
if (debuggerStatus) {
|
|
102
|
+
alert("用户通过分享链接进入系统,无code参数 ,跳转到code授权页面");
|
|
103
|
+
}
|
|
87
104
|
return getCode(); // 微信授权页面获取CODE
|
|
88
105
|
}
|
|
89
|
-
|
|
106
|
+
// && stateIndex == -1 && searchIndex == -1
|
|
107
|
+
if (!localCode && searchIndex == -1) {
|
|
108
|
+
if (debuggerStatus) {
|
|
109
|
+
alert("无本地code参数 ,跳转到code授权页面");
|
|
110
|
+
}
|
|
90
111
|
return getCode();
|
|
91
112
|
}
|
|
92
113
|
}
|
|
@@ -230,8 +251,6 @@ function envSDK() {
|
|
|
230
251
|
exports.envSDK = envSDK;
|
|
231
252
|
// 前往微信授权登录页面
|
|
232
253
|
function getCode(appId, scope) {
|
|
233
|
-
var _a = weixinConfig.cryptoiv, cryptoiv = _a === void 0 ? defaultIv : _a, _b = weixinConfig.cryptokey, cryptokey = _b === void 0 ? defaultKey : _b;
|
|
234
|
-
params.get({ keys: ['code', 'state'], cache: "session", key: cryptokey, iv: cryptoiv });
|
|
235
254
|
if ((0, utils_1.weixinBrowser)()) {
|
|
236
255
|
var id = "";
|
|
237
256
|
if (weixinConfig['appId']) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "xctc-utils",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.8",
|
|
4
4
|
"description": "localStorage存储\r ```\r sessionStorage存储\r ```\r crypto-js加密、解密\r ```\r 微信授权登录、微信分享\r ```\r 设备环境获取\r ```\r 是否是微信浏览器\r ```\r 时间戳转时间,字符串转时间戳",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|