cloudcc-ccdk 0.0.2 → 0.0.3
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/README.md +7 -0
- package/lib/ccdk.js +93 -20
- package/lib/ccdk.min.js +1 -1
- package/package.json +3 -3
package/README.md
ADDED
package/lib/ccdk.js
CHANGED
|
@@ -2,12 +2,12 @@ import Cookies from 'js-cookie';
|
|
|
2
2
|
import CryptoJS from 'crypto-js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* 加密
|
|
6
|
+
* @param {String} data 数据
|
|
7
|
+
* @param {String} key 密钥
|
|
8
|
+
* @param {String} iv 偏移量
|
|
9
|
+
* @returns
|
|
8
10
|
*/
|
|
9
|
-
|
|
10
|
-
//加密
|
|
11
11
|
function getAesString(data, key, iv) {
|
|
12
12
|
key = CryptoJS.enc.Utf8.parse(key);
|
|
13
13
|
iv = CryptoJS.enc.Utf8.parse(iv);
|
|
@@ -19,7 +19,13 @@ function getAesString(data, key, iv) {
|
|
|
19
19
|
return encrypted.toString(); //返回的是base64格式的密文
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
/**
|
|
23
|
+
* 解密
|
|
24
|
+
* @param {String} encrypted 密文
|
|
25
|
+
* @param {String} key 密钥
|
|
26
|
+
* @param {String} iv 偏移量
|
|
27
|
+
* @returns
|
|
28
|
+
*/
|
|
23
29
|
function getDAesString(encrypted, key, iv) {
|
|
24
30
|
key = CryptoJS.enc.Utf8.parse(key);
|
|
25
31
|
iv = CryptoJS.enc.Utf8.parse(iv);
|
|
@@ -33,25 +39,28 @@ function getDAesString(encrypted, key, iv) {
|
|
|
33
39
|
|
|
34
40
|
/**
|
|
35
41
|
* CryptoJS加密
|
|
42
|
+
* @param {String} data 数据
|
|
43
|
+
* @param {String} key 密钥
|
|
44
|
+
* @param {String} iv 偏移量
|
|
45
|
+
* @returns 加密的数据
|
|
36
46
|
*/
|
|
37
|
-
function encrypt(data) {
|
|
47
|
+
function encrypt(data, key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", iv = 1) {
|
|
38
48
|
data = JSON.stringify(data);
|
|
39
|
-
var key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; //密钥
|
|
40
|
-
var iv = "1"; //密钥偏移量
|
|
41
49
|
var encrypted = getAesString(data, key, iv); //密文
|
|
42
50
|
return encrypted;
|
|
43
51
|
}
|
|
44
52
|
|
|
45
53
|
/**
|
|
46
54
|
* CryptoJS解密
|
|
55
|
+
* @param {String} data 加密的数据
|
|
56
|
+
* @param {String} key 密钥
|
|
57
|
+
* @param {String} iv 偏移量
|
|
58
|
+
* @returns 解密的数据
|
|
47
59
|
*/
|
|
48
|
-
function decrypt(data) {
|
|
60
|
+
function decrypt(data, key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", iv = 1) {
|
|
49
61
|
try {
|
|
50
|
-
var key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; //密钥
|
|
51
|
-
var iv = "1"; //密钥偏移量
|
|
52
62
|
var decryptedStr = getDAesString(data, key, iv);
|
|
53
63
|
if (!decryptedStr) return null
|
|
54
|
-
// return decryptedStr;
|
|
55
64
|
return JSON.parse(decryptedStr);
|
|
56
65
|
} catch (error) {
|
|
57
66
|
console.trace("解密密码错误", error);
|
|
@@ -68,20 +77,84 @@ var Crypto = /*#__PURE__*/Object.freeze({
|
|
|
68
77
|
// cookie存储标识
|
|
69
78
|
const USER_INFO = "cc_user_info";
|
|
70
79
|
|
|
80
|
+
/**
|
|
81
|
+
* 存储用户信息
|
|
82
|
+
* @param {String} userInfo 用户信息
|
|
83
|
+
* @param {String} domain 域名
|
|
84
|
+
*/
|
|
85
|
+
function setUserInfo(userInfo, domain) {
|
|
86
|
+
Cookies.set(Crypto.encrypt(USER_INFO), userInfo, { domain: domain || "." + document.domain.split('.').slice(-2).join('.'), expires: 1 });
|
|
87
|
+
}
|
|
71
88
|
|
|
89
|
+
/**
|
|
90
|
+
* 获取用户信息
|
|
91
|
+
* @returns {String} 用户信息
|
|
92
|
+
*/
|
|
72
93
|
function getUserInfo() {
|
|
73
|
-
// 获取加密的key
|
|
74
|
-
let getKey = Crypto.encrypt(USER_INFO);
|
|
75
94
|
// 加密的用户信息
|
|
76
|
-
let encryptUserInfo = Cookies.get(
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
95
|
+
let encryptUserInfo = Cookies.get(Crypto.encrypt(USER_INFO));
|
|
96
|
+
if (encryptUserInfo) {
|
|
97
|
+
return Crypto.decrypt(encryptUserInfo)
|
|
98
|
+
} else {
|
|
99
|
+
return ""
|
|
100
|
+
}
|
|
80
101
|
}
|
|
81
102
|
|
|
82
103
|
var CCUser = /*#__PURE__*/Object.freeze({
|
|
83
104
|
__proto__: null,
|
|
105
|
+
setUserInfo: setUserInfo,
|
|
84
106
|
getUserInfo: getUserInfo
|
|
85
107
|
});
|
|
86
108
|
|
|
87
|
-
|
|
109
|
+
// cookie存储标识
|
|
110
|
+
const TOKEN = "cc_token";
|
|
111
|
+
/**
|
|
112
|
+
* 获取URL中参数的数据
|
|
113
|
+
* @param {name} 参数名
|
|
114
|
+
*/
|
|
115
|
+
function getUrlQuery(name) {
|
|
116
|
+
var reg = new RegExp(name + "=([^&]*)(&|$)");
|
|
117
|
+
var r = window.location.href.match(reg);
|
|
118
|
+
let res = null;
|
|
119
|
+
if (r != null) res = r[1].trim();
|
|
120
|
+
return res;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* 获取token
|
|
124
|
+
* @param {String} urlName 获取token的url名称
|
|
125
|
+
* @returns
|
|
126
|
+
*/
|
|
127
|
+
function getToken(urlName = "binding") {
|
|
128
|
+
let token = getUrlQuery(urlName) || Cookies.get(Crypto.encrypt(TOKEN)) || Cookies.get(urlName);
|
|
129
|
+
// 如果存在token,那么存储到cookies中,刷新有效期
|
|
130
|
+
if (token) {
|
|
131
|
+
setToken(token);
|
|
132
|
+
}
|
|
133
|
+
return token
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* 存储token
|
|
137
|
+
* @param {String} token token
|
|
138
|
+
* @param {String} domain 域名
|
|
139
|
+
*/
|
|
140
|
+
function setToken(token, domain) {
|
|
141
|
+
// 开发模式不设置domain
|
|
142
|
+
Cookies.set(Crypto.encrypt(TOKEN), token, { domain: domain || "." + document.domain.split('.').slice(-2).join('.'), expires: 1 });
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* 清除Token数据
|
|
147
|
+
* @param {String} domain 域名
|
|
148
|
+
*/
|
|
149
|
+
function clearToken(domain) {
|
|
150
|
+
Cookies.remove(Crypto.encrypt(TOKEN), { domain: domain || "." + document.domain.split('.').slice(-2).join('.'), expires: 1 });
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
var CCToken = /*#__PURE__*/Object.freeze({
|
|
154
|
+
__proto__: null,
|
|
155
|
+
setToken: setToken,
|
|
156
|
+
getToken: getToken,
|
|
157
|
+
clearToken: clearToken
|
|
158
|
+
});
|
|
159
|
+
|
|
160
|
+
export { Crypto as CCCrypto, CCToken, CCUser };
|
package/lib/ccdk.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import Cookies from"js-cookie";import CryptoJS from"crypto-js";function getAesString(data,key,iv){key=CryptoJS.enc.Utf8.parse(key);iv=CryptoJS.enc.Utf8.parse(iv);let encrypted=CryptoJS.AES.encrypt(data,key,{iv:iv,mode:CryptoJS.mode.CBC,padding:CryptoJS.pad.Pkcs7});return encrypted.toString()}function getDAesString(encrypted,key,iv){key=CryptoJS.enc.Utf8.parse(key);iv=CryptoJS.enc.Utf8.parse(iv);let decrypted=CryptoJS.AES.decrypt(encrypted,key,{iv:iv,mode:CryptoJS.mode.CBC,padding:CryptoJS.pad.Pkcs7});return decrypted.toString(CryptoJS.enc.Utf8)}function encrypt(data){data=JSON.stringify(data);var
|
|
1
|
+
import Cookies from"js-cookie";import CryptoJS from"crypto-js";function getAesString(data,key,iv){key=CryptoJS.enc.Utf8.parse(key);iv=CryptoJS.enc.Utf8.parse(iv);let encrypted=CryptoJS.AES.encrypt(data,key,{iv:iv,mode:CryptoJS.mode.CBC,padding:CryptoJS.pad.Pkcs7});return encrypted.toString()}function getDAesString(encrypted,key,iv){key=CryptoJS.enc.Utf8.parse(key);iv=CryptoJS.enc.Utf8.parse(iv);let decrypted=CryptoJS.AES.decrypt(encrypted,key,{iv:iv,mode:CryptoJS.mode.CBC,padding:CryptoJS.pad.Pkcs7});return decrypted.toString(CryptoJS.enc.Utf8)}function encrypt(data,key="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",iv=1){data=JSON.stringify(data);var encrypted=getAesString(data,key,iv);return encrypted}function decrypt(data,key="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",iv=1){try{var decryptedStr=getDAesString(data,key,iv);if(!decryptedStr)return null;return JSON.parse(decryptedStr)}catch(error){console.trace("解密密码错误",error);return null}}var Crypto=Object.freeze({__proto__:null,encrypt:encrypt,decrypt:decrypt});const USER_INFO="cc_user_info";function setUserInfo(userInfo,domain){Cookies.set(Crypto.encrypt(USER_INFO),userInfo,{domain:domain||"."+document.domain.split(".").slice(-2).join("."),expires:1})}function getUserInfo(){let encryptUserInfo=Cookies.get(Crypto.encrypt(USER_INFO));if(encryptUserInfo){return Crypto.decrypt(encryptUserInfo)}else{return""}}var CCUser=Object.freeze({__proto__:null,setUserInfo:setUserInfo,getUserInfo:getUserInfo});const TOKEN="cc_token";function getUrlQuery(name){var reg=new RegExp(name+"=([^&]*)(&|$)");var r=window.location.href.match(reg);let res=null;if(r!=null)res=r[1].trim();return res}function getToken(urlName="binding"){let token=getUrlQuery(urlName)||Cookies.get(Crypto.encrypt(TOKEN))||Cookies.get(urlName);if(token){setToken(token)}return token}function setToken(token,domain){Cookies.set(Crypto.encrypt(TOKEN),token,{domain:domain||"."+document.domain.split(".").slice(-2).join("."),expires:1})}function clearToken(domain){Cookies.remove(Crypto.encrypt(TOKEN),{domain:domain||"."+document.domain.split(".").slice(-2).join("."),expires:1})}var CCToken=Object.freeze({__proto__:null,setToken:setToken,getToken:getToken,clearToken:clearToken});export{Crypto as CCCrypto,CCToken,CCUser};
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cloudcc-ccdk",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"description": "",
|
|
5
|
-
"main": "
|
|
5
|
+
"main": "lib/ccdk-min.js",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"docs:markdown": "vuepress-jsdoc --source ./
|
|
7
|
+
"docs:markdown": "vuepress-jsdoc --source ./packages",
|
|
8
8
|
"docs:dev": "vuepress dev docs",
|
|
9
9
|
"docs:build": "vuepress build docs",
|
|
10
10
|
"libs:build": "rollup -c && npx uglifyjs lib/ccdk.js -o lib/ccdk.min.js",
|