Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
软件工程实践2022年春W班
穿梭在银河的火箭队
FZUStudyRoom
提交
70b4d3e8
F
FZUStudyRoom
项目概览
软件工程实践2022年春W班
/
穿梭在银河的火箭队
/
FZUStudyRoom
通知
12
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
FZUStudyRoom
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
70b4d3e8
编写于
5月 10, 2022
作者:
YYYTDMS
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
330_调整福大教务处爬取方法
上级
8c630b6b
变更
3
展开全部
隐藏空白更改
内联
并排
Showing
3 changed file
with
668 addition
and
666 deletion
+668
-666
component/Map/Login/LoginView.js
component/Map/Login/LoginView.js
+238
-250
component/Map/SchoolMap/SchoolMapHome.js
component/Map/SchoolMap/SchoolMapHome.js
+415
-405
utils/educationUtil.js
utils/educationUtil.js
+15
-11
未找到文件。
component/Map/Login/LoginView.js
浏览文件 @
70b4d3e8
import
React
,
{
Component
}
from
'
react
'
;
import
{
StyleSheet
,
Text
,
View
,
Dimensions
,
TextInput
,
Button
,
Image
,
TouchableOpacity
,
ImageBackground
,
ToastAndroid
,
StyleSheet
,
Text
,
View
,
Dimensions
,
TextInput
,
Button
,
Image
,
TouchableOpacity
,
ImageBackground
,
ToastAndroid
,
}
from
'
react-native
'
;
import
Icon
from
'
react-native-vector-icons/AntDesign
'
;
import
{
ASPLogin
,
getUrlkey
,
loginSystem
,
SSOLogin
,
ASPLogin
,
getUrlkey
,
loginSystem
,
SSOLogin
,
}
from
'
../../../utils/educationUtil
'
;
/**
...
...
@@ -29,259 +30,246 @@ import {
* 修改后 android:windowSoftInputMode="stateAlwaysHidden|adjustPan">
*/
const
{
width
,
height
,
scale
}
=
Dimensions
.
get
(
'
window
'
);
class
LoginView
extends
Component
{
constructor
(
props
)
{
super
(
props
);
this
.
state
=
{
muser
:
''
,
passwd
:
''
,
VerifyCode
:
''
,
iconnum
:
true
,
id
:
''
,
verify_url
:
'
https://jwcjwxt1.fzu.edu.cn/plus/verifycode.asp?n=
'
+
Math
.
random
(),
};
this
.
login
=
this
.
login
.
bind
(
this
);
this
.
refreshCode
=
this
.
refreshCode
.
bind
(
this
);
}
refreshCode
()
{
this
.
setState
({
verify_url
:
'
https://jwcjwxt1.fzu.edu.cn/plus/verifycode.asp?n=
'
+
Math
.
random
(),
});
}
constructor
(
props
)
{
super
(
props
);
this
.
state
=
{
muser
:
''
,
passwd
:
''
,
VerifyCode
:
''
,
iconnum
:
true
,
id
:
''
,
verify_url
:
'
https://jwcjwxt1.fzu.edu.cn/plus/verifycode.asp?n=
'
+
Math
.
random
(),
};
this
.
login
=
this
.
login
.
bind
(
this
);
this
.
refreshCode
=
this
.
refreshCode
.
bind
(
this
);
}
changeMuser
=
text
=>
{
this
.
setState
({
muser
:
text
});
};
changepasswd
=
text
=>
{
this
.
setState
({
passwd
:
text
});
};
changeVerifyCode
=
text
=>
{
this
.
setState
({
VerifyCode
:
text
});
};
changeiconnum
=
()
=>
{
this
.
setState
({
iconnum
:
!
this
.
state
.
iconnum
});
};
refreshCode
()
{
this
.
setState
({
verify_url
:
'
https://jwcjwxt1.fzu.edu.cn/plus/verifycode.asp?n=
'
+
Math
.
random
(),
});
}
async
login
()
{
let
loginParams
=
{};
let
params
=
{};
loginParams
.
muser
=
this
.
state
.
muser
;
loginParams
.
passwd
=
this
.
state
.
passwd
;
loginParams
.
VerifyCode
=
this
.
state
.
VerifyCode
;
changeMuser
=
text
=>
{
this
.
setState
({
muser
:
text
});
};
changepasswd
=
text
=>
{
this
.
setState
({
passwd
:
text
});
};
changeVerifyCode
=
text
=>
{
this
.
setState
({
VerifyCode
:
text
});
};
changeiconnum
=
()
=>
{
this
.
setState
({
iconnum
:
!
this
.
state
.
iconnum
});
};
if
(
loginParams
.
muser
===
''
)
{
ToastAndroid
.
show
(
'
学号不能为空!
'
,
500
);
//提示
return
;
}
if
(
loginParams
.
passwd
===
''
)
{
ToastAndroid
.
show
(
'
密码不能为空!
'
,
500
);
//提示
return
;
}
if
(
loginParams
.
VerifyCode
===
''
)
{
ToastAndroid
.
show
(
'
验证码不能为空!
'
,
500
);
//提示
return
;
}
async
login
()
{
let
loginParams
=
{};
let
params
=
{};
loginParams
.
muser
=
this
.
state
.
muser
;
loginParams
.
passwd
=
this
.
state
.
passwd
;
loginParams
.
VerifyCode
=
this
.
state
.
VerifyCode
;
await
loginSystem
(
loginParams
)
.
then
(
response
=>
{
if
(
response
.
url
.
search
(
'
hosturl
'
)
!==
-
1
)
{
params
=
getUrlkey
(
response
.
url
);
}
return
response
.
text
();
})
.
then
(
data
=>
{
if
(
data
.
search
(
'
验证码不能为空!
'
)
!==
-
1
)
{
this
.
refreshCode
();
ToastAndroid
.
show
(
'
验证码不能为空!
'
,
500
);
//提示
return
;
if
(
loginParams
.
muser
===
''
)
{
ToastAndroid
.
show
(
'
学号不能为空!
'
,
500
);
//提示
return
;
}
if
(
data
.
search
(
'
验证码验证失败!
'
)
!==
-
1
)
{
this
.
refreshCode
();
ToastAndroid
.
show
(
'
验证码验证失败!
'
,
500
);
//提示
if
(
loginParams
.
passwd
===
''
)
{
ToastAndroid
.
show
(
'
密码不能为空!
'
,
500
);
//提示
return
;
}
if
(
data
.
search
(
'
用户名或密码错误!
'
)
!==
-
1
)
{
this
.
refreshCode
();
ToastAndroid
.
show
(
'
用户名或密码错误!
'
,
500
);
//提示
if
(
loginParams
.
VerifyCode
===
''
)
{
ToastAndroid
.
show
(
'
验证码不能为空!
'
,
500
);
//提示
return
;
}
});
if
(
JSON
.
stringify
(
params
)
===
'
{}
'
)
{
return
;
}
this
.
setState
({
id
:
params
.
id
,
});
await
loginSystem
(
loginParams
)
.
then
(
response
=>
{
if
(
response
.
url
.
search
(
'
hosturl
'
)
!==
-
1
)
{
params
=
getUrlkey
(
response
.
url
);
}
return
response
.
text
();
})
.
then
(
data
=>
{
if
(
data
.
search
(
'
验证码不能为空!
'
)
!==
-
1
)
{
this
.
refreshCode
();
ToastAndroid
.
show
(
'
验证码不能为空!
'
,
500
);
//提示
return
;
}
if
(
data
.
search
(
'
验证码验证失败!
'
)
!==
-
1
)
{
this
.
refreshCode
();
ToastAndroid
.
show
(
'
验证码验证失败!
'
,
500
);
//提示
}
if
(
data
.
search
(
'
用户名或密码错误!
'
)
!==
-
1
)
{
this
.
refreshCode
();
ToastAndroid
.
show
(
'
用户名或密码错误!
'
,
500
);
//提示
}
});
let
SSOParams
=
{
token
:
params
.
token
,
};
let
ASPParams
=
{};
await
SSOLogin
(
SSOParams
).
then
(
res
=>
{
ASPParams
=
{};
ASPParams
.
hosturl
=
params
.
hosturl
;
ASPParams
.
ssourl
=
params
.
ssourl
;
ASPParams
.
num
=
params
.
num
;
ASPParams
.
id
=
params
.
id
;
});
if
(
JSON
.
stringify
(
params
)
===
'
{}
'
)
{
return
;
}
this
.
setState
({
id
:
params
.
id
,
});
if
(
JSON
.
stringify
(
ASPParams
)
===
'
{}
'
)
{
return
;
let
SSOParams
=
{
token
:
params
.
token
,
};
await
SSOLogin
(
SSOParams
).
then
(
res
=>
{
ToastAndroid
.
show
(
'
登录成功!
'
,
500
);
//提示
this
.
props
.
navigation
.
navigate
(
'
SchoolMapHome
'
,
{
id
:
params
.
id
});
});
}
await
ASPLogin
(
ASPParams
).
then
(
resp
=>
{
if
(
resp
.
status
===
200
)
{
ToastAndroid
.
show
(
'
登录成功!
'
,
500
);
//提示
this
.
props
.
navigation
.
navigate
(
'
SchoolMapHome
'
,
{
id
:
params
.
id
});
}
return
resp
.
text
();
});
}
render
()
{
const
{
navigation
}
=
this
.
props
;
return
(
<
View
style
=
{
styles
.
container
}
>
<
ImageBackground
source
=
{
require
(
'
../../../images/Map/福大登录界面背景.png
'
)}
style
=
{{
width
,
height
:
null
,
flex
:
1
}}
resizeMode
=
"
cover
"
>
<
View
style
=
{{
// width: width / 1.5,
// height: height / 1.5,
alignItems
:
'
center
'
,
justifyContent
:
'
center
'
,
marginLeft
:
width
/
5
,
marginRight
:
width
/
5
,
marginTop
:
height
/
6
,
marginBottom
:
height
/
6
,
// backgroundColor: 'black',
borderColor
:
'
#592202
'
,
borderWidth
:
3
,
borderRadius
:
10
,
backgroundColor
:
'
#F6ECE1
'
,
}}
>
<
Text
style
=
{{
color
:
'
#592202
'
}}
>
教务处登录
<
/Text
>
<
View
>
<
Image
source
=
{
require
(
'
../../../images/Map/福大图标.jpg
'
)}
style
=
{{
width
:
40
,
height
:
40
,
borderRadius
:
40
,
borderWidth
:
2
,
borderColor
:
'
white
'
,
}}
/
>
<
/View
>
render
()
{
const
{
navigation
}
=
this
.
props
;
return
(
<
View
style
=
{
styles
.
container
}
>
<
ImageBackground
source
=
{
require
(
'
../../../images/Map/福大登录界面背景.png
'
)}
style
=
{{
width
,
height
:
null
,
flex
:
1
}}
resizeMode
=
"
cover
"
>
<
View
style
=
{{
// width: width / 1.5,
// height: height / 1.5,
alignItems
:
'
center
'
,
justifyContent
:
'
center
'
,
marginLeft
:
width
/
5
,
marginRight
:
width
/
5
,
marginTop
:
height
/
6
,
marginBottom
:
height
/
6
,
// backgroundColor: 'black',
borderColor
:
'
#592202
'
,
borderWidth
:
3
,
borderRadius
:
10
,
backgroundColor
:
'
#F6ECE1
'
,
}}
>
<
Text
style
=
{{
color
:
'
#592202
'
}}
>
教务处登录
<
/Text
>
<
View
>
<
Image
source
=
{
require
(
'
../../../images/Map/福大图标.jpg
'
)}
style
=
{{
width
:
40
,
height
:
40
,
borderRadius
:
40
,
borderWidth
:
2
,
borderColor
:
'
white
'
,
}}
/
>
<
/View
>
<
View
>
<
TextInput
placeholder
=
{
'
学号
'
}
style
=
{
styles
.
textInputStyle
}
onChangeText
=
{
text
=>
{
this
.
changeMuser
(
text
);
}}
/
>
<
/View
>
<
View
>
<
TextInput
placeholder
=
{
'
密码
'
}
secureTextEntry
=
{
true
}
selectionColor
=
{
'
black
'
}
keyboardAppearance
=
{
'
dark
'
}
style
=
{
styles
.
textInputStyle
}
onChangeText
=
{
text
=>
{
this
.
changepasswd
(
text
);
}}
/
>
<
/View
>
<
View
style
=
{{
flexDirection
:
'
row
'
}}
>
<
TextInput
placeholder
=
{
'
验证码
'
}
style
=
{
styles
.
textInputStyle2
}
onChangeText
=
{
text
=>
{
this
.
changeVerifyCode
(
text
);
}}
/
>
<
TouchableOpacity
onPress
=
{()
=>
this
.
refreshCode
()}
>
<
Image
resizeMode
=
"
contain
"
source
=
{{
uri
:
this
.
state
.
verify_url
}}
style
=
{{
width
:
width
*
0.2
,
height
:
38
,
resizeMode
:
'
stretch
'
,
}}
/
>
<
/TouchableOpacity
>
<
View
>
<
TextInput
placeholder
=
{
'
学号
'
}
style
=
{
styles
.
textInputStyle
}
onChangeText
=
{
text
=>
{
this
.
changeMuser
(
text
);
}}
/
>
<
/View
>
<
View
>
<
TextInput
placeholder
=
{
'
密码
'
}
secureTextEntry
=
{
true
}
selectionColor
=
{
'
black
'
}
keyboardAppearance
=
{
'
dark
'
}
style
=
{
styles
.
textInputStyle
}
onChangeText
=
{
text
=>
{
this
.
changepasswd
(
text
);
}}
/
>
<
/View
>
<
View
style
=
{{
flexDirection
:
'
row
'
}}
>
<
TextInput
placeholder
=
{
'
验证码
'
}
style
=
{
styles
.
textInputStyle2
}
onChangeText
=
{
text
=>
{
this
.
changeVerifyCode
(
text
);
}}
/
>
<
TouchableOpacity
onPress
=
{()
=>
this
.
refreshCode
()}
>
<
Image
resizeMode
=
"
contain
"
source
=
{{
uri
:
this
.
state
.
verify_url
}}
style
=
{{
width
:
width
*
0.2
,
height
:
38
,
resizeMode
:
'
stretch
'
,
}}
/
>
<
/TouchableOpacity
>
<
/View
>
<
TouchableOpacity
style
=
{{
backgroundColor
:
'
#F4D9BE
'
,
width
:
width
-
width
/
2
,
marginBottom
:
20
,
}}
onPress
=
{()
=>
{
if
(
!
this
.
state
.
iconnum
)
{
this
.
login
();
// navigation.navigate('SchoolMapHome');
}
else
{
ToastAndroid
.
show
(
'
阅读并同意用户协议和隐私政策!
'
,
500
);
//提示
}
}}
>
<
Text
style
=
{{
color
:
'
#592202
'
,
textAlign
:
'
center
'
}}
>
登录
<
/Text
>
<
/TouchableOpacity
>
<
View
style
=
{{
flexDirection
:
'
row
'
,
marginBottom
:
5
}}
>
<
TouchableOpacity
onPress
=
{
this
.
changeiconnum
}
>
{
this
.
state
.
iconnum
?
(
<
Icon
name
=
{
'
minuscircleo
'
}
size
=
{
20
}
/
>
)
:
(
<
Icon
name
=
{
'
checkcircleo
'
}
size
=
{
20
}
/
>
)}
<
/TouchableOpacity
>
<
Text
style
=
{{
fontSize
:
14
}}
>
阅读并同意用户协议和隐私政策
<
/Text
>
<
/View
>
<
/View
>
<
/ImageBackground
>
<
/View
>
<
TouchableOpacity
style
=
{{
backgroundColor
:
'
#F4D9BE
'
,
width
:
width
-
width
/
2
,
marginBottom
:
20
,
}}
onPress
=
{()
=>
{
if
(
!
this
.
state
.
iconnum
)
{
this
.
login
();
// navigation.navigate('SchoolMapHome');
}
else
{
ToastAndroid
.
show
(
'
阅读并同意用户协议和隐私政策!
'
,
500
);
//提示
}
}}
>
<
Text
style
=
{{
color
:
'
#592202
'
,
textAlign
:
'
center
'
}}
>
登录
<
/Text
>
<
/TouchableOpacity
>
<
View
style
=
{{
flexDirection
:
'
row
'
,
marginBottom
:
5
}}
>
<
TouchableOpacity
onPress
=
{
this
.
changeiconnum
}
>
{
this
.
state
.
iconnum
?
(
<
Icon
name
=
{
'
minuscircleo
'
}
size
=
{
20
}
/
>
)
:
(
<
Icon
name
=
{
'
checkcircleo
'
}
size
=
{
20
}
/
>
)}
<
/TouchableOpacity
>
<
Text
style
=
{{
fontSize
:
14
}}
>
阅读并同意用户协议和隐私政策
<
/Text
>
<
/View
>
<
/View
>
<
/ImageBackground
>
<
/View
>
);
}
);
}
}
const
styles
=
StyleSheet
.
create
({
container
:
{
alignItems
:
'
center
'
,
flex
:
1
,
flexDirection
:
'
column
'
,
backgroundColor
:
'
#dddddd
'
,
},
iconStyle
:
{
width
:
80
,
height
:
80
,
marginTop
:
50
,
marginBottom
:
30
,
borderRadius
:
40
,
borderWidth
:
2
,
borderColor
:
'
white
'
,
},
textInputStyle
:
{
width
:
width
-
width
/
2
,
backgroundColor
:
'
#F6ECE1
'
,
marginBottom
:
1
,
paddingLeft
:
10
,
textAlign
:
'
left
'
,
borderBottomWidth
:
1
,
borderBottomColor
:
'
#797979
'
,
},
textInputStyle2
:
{
height
:
38
,
width
:
width
-
width
/
2
-
width
*
0.2
,
backgroundColor
:
'
#F6ECE1
'
,
marginBottom
:
1
,
paddingLeft
:
10
,
textAlign
:
'
left
'
,
},
container
:
{
alignItems
:
'
center
'
,
flex
:
1
,
flexDirection
:
'
column
'
,
backgroundColor
:
'
#dddddd
'
,
},
iconStyle
:
{
width
:
80
,
height
:
80
,
marginTop
:
50
,
marginBottom
:
30
,
borderRadius
:
40
,
borderWidth
:
2
,
borderColor
:
'
white
'
,
},
textInputStyle
:
{
width
:
width
-
width
/
2
,
backgroundColor
:
'
#F6ECE1
'
,
marginBottom
:
1
,
paddingLeft
:
10
,
textAlign
:
'
left
'
,
borderBottomWidth
:
1
,
borderBottomColor
:
'
#797979
'
,
},
textInputStyle2
:
{
height
:
38
,
width
:
width
-
width
/
2
-
width
*
0.2
,
backgroundColor
:
'
#F6ECE1
'
,
marginBottom
:
1
,
paddingLeft
:
10
,
textAlign
:
'
left
'
,
},
});
export
default
LoginView
;
component/Map/SchoolMap/SchoolMapHome.js
浏览文件 @
70b4d3e8
此差异已折叠。
点击以展开。
utils/educationUtil.js
浏览文件 @
70b4d3e8
...
...
@@ -8,7 +8,6 @@ function loginSystem(params) {
params
.
VerifyCode
;
return
fetch
(
'
https://jwcjwxt1.fzu.edu.cn/logincheck.asp
'
,
{
method
:
'
POST
'
,
mode
:
'
cors
'
,
body
:
data
,
headers
:
{
Accept
:
'
application/x-www-form-urlencoded
'
,
...
...
@@ -27,7 +26,7 @@ function loginSystem(params) {
// 参数需要token
function
SSOLogin
(
SSOParams
)
{
let
data
=
'
token=
'
+
SSOParams
.
token
;
let
data
=
'
token=
'
+
encodeURIComponent
(
SSOParams
.
token
)
;
return
fetch
(
'
https://jwcjwxt2.fzu.edu.cn/Sfrz/SSOLogin
'
,
{
method
:
'
POST
'
,
mode
:
'
cors
'
,
...
...
@@ -50,7 +49,7 @@ function ASPLogin(params) {
let
paramsArray
=
[];
//拼接参数
Object
.
keys
(
params
).
forEach
(
key
=>
paramsArray
.
push
(
key
+
'
=
'
+
params
[
key
]
),
paramsArray
.
push
(
key
+
'
=
'
+
encodeURIComponent
(
params
[
key
])
),
);
if
(
url
.
search
(
/
\?
/
)
===
-
1
)
{
url
+=
'
?
'
+
paramsArray
.
join
(
'
&
'
);
...
...
@@ -60,7 +59,8 @@ function ASPLogin(params) {
}
return
fetch
(
url
,
{
method
:
'
GET
'
,
redirect
:
'
manual
'
,
// redirect: 'manual',
redirect
:
false
,
headers
:
{
Host
:
'
jwcjwxt2.fzu.edu.cn:81
'
,
Connection
:
'
Keep-Alive
'
,
...
...
@@ -70,6 +70,7 @@ function ASPLogin(params) {
});
}
function
queryRoom
(
params
)
{
let
buildings
=
{
x1
:
'
公共教学楼西1
'
,
...
...
@@ -87,6 +88,7 @@ function queryRoom(params) {
let
end
=
params
.
end
;
let
url
=
'
https://jwcjwxt2.fzu.edu.cn:81/kkgl/kbcx/kbcx_kjs.aspx?id=
'
+
params
.
id
;
// 'https://59.77.252.46:81/kkgl/kbcx/kbcx_kjs.aspx?id=' + params.id;
// let data = {
// ctl00$xz1: '>=',
...
...
@@ -106,24 +108,26 @@ function queryRoom(params) {
// };
let
data
=
'
ctl00%24xz1=%3E%3D&ctl00%24jsrldpl=0&ctl00%24zzjdpl=
'
+
en
d
+
en
codeURIComponent
(
end
)
+
'
&__VIEWSTATE=vlO7ulF2G6X63w1SlqH5BKo%2BAWvXqo18v%2Ff42wSd%2F%2FxdopynqZYr35zy6uIffqfTmEZNAGy3sY80CbFTVgwqgwjZrie0AwIYpmvdnSxxEWB2UWesnZHICqeGc15FV5DIC4RGLM1ZvuXiegiJbJImxergBh0mvwAYgjBDTeVg4sh4ZKphJTKgYhvzS13bKPVGJJTB9b644vfFYzURKKR5Bg92Ht0JW06KNgJuNjLZ737qjITmAW5lis5iL4LRevPfUHtMSa%2FBdnZ8BYmcQmyG5tXFH8jeezDaj54rombO0X9jzCaaO58MGkPpmsMfuHE5FUWe%2BapyZQ96vMuYuDSVhuK1togeUd%2B1xT5fxJyROgi4HKwf8AWyW%2BluVnL0EjKpzTA9kARMyJDPFHsDkMU%2Fm%2BhxWEwweAAwjBKJhs8wD2k7yItwCRq4KPrvCBFhCArmyqW7V8r0LNGUQqC9UB7ot13m0Qmt6ioGeDm7ts9pZMNivgXFrgS1PhD1GvrdsUN%2BiXvv81G5rVzCYarObhBAejbQ3QP7zWV2%2BpAxX5kypKzEAHveGo4j8pc5rPZkvKUvuNN3FpcnXW%2Fs%2FNfso7%2Fp30ZBoBo%2BUFnPp1lS2cheMcsghxOyiRoLh9wXpB9SY%2F9mJmf2w3fE%2FMI7ZoYbCbom0uv5WJFe4d%2Fb0evkOaou3Bv4%2Blotuyjxeor0qw1nQ%2FH5UefBYPBug1OJEN26UkCjScH8VcuJJLEOBL5ALi%2BUhxG%2Bbb%2FYS3ZCg8ZVadocDI9JSoY42Q4oCX9YxVTTDvro8Ao4iplIl3onjogltnh2hvH2fdCUYeEgaJRzTwT1D%2BXXlq2E6%2FSgfFimhHNdBEKftzZ0C%2Fl2kkijYlUoVzUPKFBbyjz%2FjAnuqsPvrWMNiGMu2JgpMUiTT8x1tPTKkAyOFCmQcs3EopkvVq59O9WNMipXZtMf4u7vu5oalyvO0MVIGDD6SB%2BMlZ5lA3GGKTlP1pOpDe0zQwuQuh9n9K90XzxgtD9W9JSz8As7%2F8SKWTeQ7JorW%2BRwKxh6cVMAl69QnGs8xHnk0xcWdHQ6vpvdccjsgpOTlJKHGiggM7dblv3r9c0QTN0juK8jqRGVicuDdd%2Ftbk9v%2FNendlLiuayZNCGrmZauk1MXgNCM49NFvEHavX7ANm0GdQYRX9lGKVRSfT4MEje22i5CQ%2BiV2B0jkE9I%2F7E7c%2FRrJKryInC6nMxyZaWdrIDTPic8Gt%2B0GZiTbdlK3QNtKAZp%2BaS%2FJAZvzWxDX6Kq2arekl8qwMnY83uItF%2BePgS%2FHAAsg%2F07niRrNnCO7MPGRrqb8kOLlN%2B1c2hGZ%2Bu3NAnG8RfdgZC6gmbvPA3bUr5jpxWiosH7h7x3xujhjhnToevL8t9EmH1B7J4IS9f3KDkD1db1fidozuDvYCe9uWseh6FNNhtZ5e1c%2BmhpcX5AcOL40ZtWsG57oO3JM34hiuwkZQg8qS1okRL%2BxoKCtPLQGWoZvAyDQyvdtjvEkKqETVbrfCbB4ozYtpfpVEIQlYdHe4rqEVGu4CHrhXyq0DwVHnq4SitgXLCTh5c9XMAI6nXFMu1qLyzFCZGMMElEdnf2Fr1zuL%2FYi9Y2qz%2B9D8%2B1VFnZArlsLunpEOD2Q%2FifbJbZ1KcQoO55ASLMdecK8TqtnASdVs3GC1c%2BVt%2FIcRe%2Bvws3yYinTTu4OfnZaxwUrhEYsohpoYIq2SHG1XJlx5dQliFxPm%2F3q2UgjHC5IoxuNFZaRCHgxRRPkwg6Z76zAYqEN4iKre6%2FebxsE3vgeB%2FffFFbQvq3wGlBLNAekx6woag8xiM2S7JHFHuJO5%2Brp5ljS7w4zvNjiPap9HG2UuRFeFASwcUQ1n7Lajx1MUg4RdSYVuU1ga3E9Mnof7hSm%2Fn2cE6mXUWUDfGIdwNJlNLaNXXnG%2FnWkv%2BUKTBp6d%2Fo2s31KazFZWb8ye90Vsb9bJjuxLu1WGOyNaz8LtuZNeHDEmjTBT2DKDZaaYSN2Z%2BWQUHFA2%2BXnWwFSenL0eb1K%2Fgjp6yuJ8jTSrWrEmX6g0747lXj9EpwY9CEBlZtf6ArbdHVcOSPLNy2JDTL%2BzpMiICT5HfsHeZMgTmqhKNUVhzV4XF4KBp6eJP5KV%2BVvNTEbBJJJuZxoCX3HGR6%2BmXLI36Ei3m%2B4srUi6ueiUodYGyUCKnxtCEyos6KbJ55GpE3IvoHnvJnfCVumRNPCUdIx6ZCMqnEQ6WT3n53WNBeFx4QRKkQ3SCyOzNPEVo9%2FslqzQFfDNMya0QuVONdgf%2F7nmhEG8vzTc0iTZ%2BQtwF6L8Y9ez0Lx76uWRE6Zhi3zAVphzJNm0P2RqZjbAZ6lrnUGfclDMs9oOiqVYa%2FNtFrlrBDU%2Frpr55lpqm5LJ%2Fe8gw5kQMWmSZHEIWX39NX%2BkT3uXPSmwtsv0u4l1qvZy9WgJUHHbgQ7u1MSPUKIXRUhr4KAQMhQfENHuy9EmhDj8yCRgxyYAyqU0QQACzd9k6mMeHroH%2F3Qrz%2BN9TNY5BKZFu5MPwvoV4Im6V5W2%2BNS8WTZXv0uY4fWswjuUX6IwGqMpraZEjfeNZnT37Or29DfIRtvXdaWOLcgfl%2Bv01Dhc7vVV2I25Wc%2BWxtql%2FQibAAjf4LGTDmA7fiqYtwfxalBpRDj9d%2FOYKY5mbZShc64BnkKim1O8vaRF7MCKg%2Bp00crT173Nzb77i4A2GLuB7jFazH7e84Cnqq0m1BtlSkDqbhVlDIogko3J253Q5k6M964eyS0cmGOFK%2FQkiDRBVuGUZQrtOvE0UpnCPV%2F3xc0V%2F8sq1o5N%2Foo5LJA9nApfs5yABPb%2FF9KrrCcoEBBN%2FVw6BMMTPXPaZ5S3BqxlkhvhReoVSWXs8oiBEJ6u0EdZh838STINMjiZc9ENhIoqPd%2BAVuIGDCm%2BYQy09S5rGOL46MkhA99wtT%2BFIHMB9Y5vZunq3U9egEeU3V4OxDb20h44ZYxgS%2BhrKh1YQAaXsXe52CHYs0P1HOR68mBmpF72%2BoNFVGgoiWA9WhK1gyh74iA3ehB6eAruWw8RxJSU%2BurzeuEw93%2BR%2F8lL8EOC2%2FybZ%2BjKifktyFgyR%2FjiGl67FwzUJQoErA6EyZXdklBb19lrCIJkLrqmdKMjrcoG72YgdYCRD7JgI7YZQpbGl3nd%2FjcT1Du2rdDdzZapp4ChVb3m7ytAOKwDQp0k9sNOVdmflIEkRLBYBQb3q9h%2Bq50ldQWbg5%2Fm6wqzwzsDCPwQDD8BDnO2BtcoQwF0jk2dwbzbMemqdPEmCASULhtjPq%2Bm5oIMep3z0AmfrYi6lZTT%2BJy3GzzSXi6f5onCQrVueu2pWcWs4gXE%2B62iLEjzzMQshGMzfxSCct51SdDV34lrnSk2nr4ud9Hqoj9CCLZkbNGqfEvN8aEDjgMIHg9e62jl9Kzhnd%2FypYosSuVjzPRFes2Dg8anda%2BakNT%2FMEn5fBSoLz7ei0iRUSKnNVPL0bWUrWQPkQ%2BdUB4Tf6oL9lcRUArXPCf24d6ObmPCpuochPRYCE9zvizX2nIqWMu1CLLqRZa4IFi%2Fr1%2Fdp4u3OZ5TqYTNOF86PQADku7ZuQLm%2Fw%2FGTO8MS%2BUt1iNI31QfewvdY9KHQJ0sg%2BryL1JqaIKyH7SY%2BvONbU%2FMlcQLeWCkDOgzwuedrleMUK3SbGZDv3rTlshqFXIZlGRsrZlP7DRpXOF5uw75%2BDVj58vr0hOzM2dZanJL%2BCRfTZpQVMYwziq9Zk5u6G0%2B3QLwnCAiHDh5hxVuP4v9eUDF14tJzIWtnRA4kR3LSov%2F3HFMDhAiHKy%2FSMHv0zWhigjTvkvHisddc%2BrGIzOiiCc1dAEGfJ%2Fm6L55FOxbXsO0Ci35krTu9jkwMM23wIHhBeF8TcaNiWh797nMhTH97mJ9j6eXT2iW0h3iU8X3b1B13abl9Kubsfs8fNV%2FbIQWa6dPvbW2aq37WGOBgR0ruxH9wFH%2FmiX1sgrQGNrbOAQsSbamY%2BI2wuGQMkHaG1NXws4rJ4EMpbBi3oc7ChqvJa94cwJ6M16ifc6aQYd8DD%2FU8OkAQ1vRGm8gNF%2FarkoSC3MiZTGMSkDMk4cQpPcjO6C%2BFb1tHxKl0ovmO0955NYyDMT1wSuRZudQnG9hwBt%2BzruO3FzikzJtN2qyxtxI5Na3CETj1Fgp1jI723eUf7n%2FvOCQ19%2FZllXiiuqdKBdilFhUYsCXRTy%2BWXCtYgmC8pbuwSxNuuTInVAX2HjM8pk32%2FV6m0kcqsgCoIU%2FQcPO1%2Bc5kVQEyidQ6CcmtUMo%2F1xU%2FRm32ns74xJ84otjvtgoqjbUmXtO25DTwEfWCkE08JeN3p788bhuPVYsM7W3Mnq3cntODRu45Fl1Z2Y6q870Roz3nsyigDS2hQMbpLnziio1xn1cv8EAZNP3dum%2BvTawEocgv6J%2Bf2Utj%2B9OpN6vhBHwoNf%2BhZLCqUr%2FqjLasHIysIh7Z%2BjSKFfyZmX5GJ95doHfAiSpgAHnwgQgwnVna%2ByFRsCGjCu%2B%2B7iUTQuAWzYc2sSS5uwOxMmu%2BCD7l4p1vT93CbZBV6%2FhtB8AJs6nKX14WvfRTWouJzvOBQqsI5GDScl8aVw7or4fvCcsDU3hMNA9lmG38HJGV8DVhVM6upNqj6MBA2WlNDSDOZh%2FGPSAvNrVvk5t%2BG0AG%2B%2B4QKIMd0uBfL6cA5JyeF0J5LgivlClbdY21qLlvA3YRP5eOCaKQbqSYWQffD%2FINAf4t4tMqozYuZwLM%2Fpuza8oMGHTGiqP4X7llTFk51EuXZ4N1iBT32Ex4ziF2cosfyJwpQ5iMtleWPZh10hyiFrsjsV8B6HvIbpFw3Vf8sXohDuxjNa2qpwNDnU9pheW6NoVAQDa%2BdLethUnK9sL6eFbQcLY%2BNzKqBJR0BdvJMWlFXHZB8CV4iGfwXCFprHxc1xJJlOyToXyeAlZ631ayvhLL5mRz%2BIP8HBiIE%2Fn1fX9DFCO8OV3S3pcwePGFUydM2yl0GGKX9SMWWLAyn6RiN5WGHmo5cm8lQPKJL%2FOLJvSRGo8DGZq%2BHZkYdX2%2BeeGHPBR8ijLhxOlvR%2FuGiEIwwphSafQpje8L7TGUQoD8vjVhrA4c9vPm997QZSoFoVX1uxXkntF7P%2FwoasZ8QocaLH0MaS78%2BJrSWggy3N%2FNQpau%2FlCFlgQQOL9eHwzH43J9AJ3a6h%2F0Ph85XGAVxbkLnHki9eaH%2BrObXy4I%2F6YmKVcc7Em1J2MEDub%2B%2FALRCb5F3i8nKv3d7HUTGWLsue9QhPco%2Fc8mDHYvWLojn6uM30ODPbQPx1CR%2FQzxQHxbGXLGVL76x2N6i9hGxVMDqEIfFIJpIX3F1eW0bVpAJrfD3ASUFLi6YV6I96VvSdIgXMWsOnxNQhe1p7HO1aRZkP2eaNzu%2FdxQG1YMG1ZEG5M%2FLlLOJN0ImETtjzMNs1sEgvYlZmOxby9yN1vhRV5fePrCqVj139hsvHS7uZaXZVLMN3DpbZC7vdgxAn%2Ftmo9lG6f4QnV9r5CFDynfQ8ZEzrAJr%2FnjiZtwZxl3jp5YHPASW8BSBJCW2r4SUUNsLB1ybYatSmywQbM5UmwDyDWnhqcJ7QMQRk%2B2MveqhNIS4P8rcYJrJKJgMBu2ob%2Bx9TFeL0S%2BxQYoqRzCxkiK45oRHstx7UWmsX621SGyd1KLCJNDNEQ6eIn5bXY%2Bc2OQaMKVyQ7NRhJzOyHyVbSglqqwTyUcPp0oPYqQhOT3DESJSShwxFWebzFpEzNFv5c71od2NGkCfc5xa7vf1JQ%3D%3D&ctl00%24TB_rq=
'
+
time
+
encodeURIComponent
(
time
)
+
// '2022-05-06' +
'
&ctl00%24ksrldpl=0&ctl00%24ContentPlaceHolder1%24BT_search=%E6%9F%A5%E8%AF%A2&ctl00%24jxldpl=
'
+
encodeURIComponent
(
build
)
+
'
&ctl00%24qsjdpl=
'
+
start
+
encodeURIComponent
(
start
)
+
'
&ctl00%24xz2=%3E%3D&__EVENTVALIDATION=wyhcJ8LnFmL42ro1rjoGj4rS980SzDv6iaam4t1p4s81qlZ85Br%2FY3mTZQgdT4QWC2QETO%2FuZ0d4tdcR69rIpbLGgLD4KSdvOVL%2FaRNhXIbAq3gt0PQNAv83u%2Bfzc2VgGgQi63rlHlKm4phfJa%2F0nrhH85nsENH69khqCR96zzgcpBChD3dXTrzaDb4quChDDJALkapb3e5iuCsj1iZRY3mWyZpVELZY4tjG2vSFs%2BoxKS1lp9suxiF7kuYCjjJzKPMXq%2Brb%2F%2FV1P1DHPcL24c6Ed14oUMNYhhbXGeKGzDZdhqVSYaC60VIHsEpzvJsMO3v%2FiKcX2Zxa%2BuDSIaLT5%2FZMyAPFm8RJsrIMpH%2Bxa7njld%2F01%2FdBGyj7oFSxCDJTXjUgeC9sYRQyXMzSh%2F9a79Jzg2o7962a6ilF%2BB9G0dbqlsAZgbnWH%2FpItfpQV9yx%2Fk%2F1abd88jjLBhuiKd1GzBY4oTonj6r54dA22uiaPUz1BpyBnY%2FQ5%2BuFo6k2E3JEGKjqFAd%2FKYX9lkg1rGByRBeMACrWtsjQD131ansTZO28eSy8W8CH6rnpLZ39eIaBpKi3jiv7DoBsXHnfaq12pGXD1MEXJL9tw8RMIdjEZ0sjA802VThINo4yN6nmQFY%2F0Czetc0ie%2FnkyuRAAZme1P64kj7ZkA%2FTLLPJYRnoq5Pi4qLq%2BRjurwmyFtetkMRilk36GbOKq1QpwQUVDFqNfAzDsJ2gjiiu%2FptM1qZi8uEjMNZh7SbA%2BCXHhTF268Pq4tHIi6UgqfxUfZEw3adIgD62NSI8pjS0uca9aa3NOSpBLmfYD%2BezEqtNVXZDt%2BrmKhsVNAY5hfYZxZ1kcFV98cLuccDolK5z5v1sgFgmaq%2BOoFYDxVgoEZO7SIze8g6hhIR4lV%2F68%2B%2BEkWyVufAS%2FIjwYzKOg1SqKvxW3v%2B2xs%2BoiMZcHhaGu9cEiS5B9%2FS7ME%2BGt%2FbZoi7dtRH1PmNBsr%2FlxMvJTvzR982sax0Of2DXIWEhlTjXyrcl6ByvTtOJ4Ks7%2F%2Bu6nE9GZil3xrwXkCcTEpFXBegVwzVJR4uiW2f3Q3FgC3HYucyl7RvdNheOQVcqUNAKuoI7uOnhOoZJAa8Ra%2F2kVeLytc58RllvZYZjWIe5YSM9YWACnE7P2TgpezUUUQjGsHqbo7nvyZaP3rxk0kwY7Xdrs%2FoP8GOJna0fL8tHVqaWG5BnzQhvSqxVK0b8S8rZepNDYi0g3D1hzPfUqpsPkTm3A8BrTOSY4u1hSuz0OlCVzEbHpdtEI0Bqde5xLiU39dQtnb0O24EZJt%2FbD4nt4fZcHQ4nFrkZuZykJ%2B5Q%2FN%2BiibZAn3SGUXPSkwVs%2FlKyjurX1SYH6MOod3gTNs%2FNSjHFEckwqd5qQ5bxjOCIA7sXZH6oAFFcL5twa072l4CNbTuHxobfBiudZ9B1LwFkJmOCpkhk5E0rYJ6Z8smCp89LpS2wSLM3mwD2wXL0iW8TRsT83pPGY3wfMAY9gJ6NEHVrj%2BXidHG0rX9sOtcMek6OGDm7WU0GDXEHktk6w9vvFBZqiZdo%2FGMcvXAwbqUsnoXpfqS3KW482I2ePFIwm%2BIWUE2iLAgslJe9jBlIe7%2FrYsmVcXA%2Fxvavg90QXl8DV936kGuZt2QMrlJFAsH39UxfQUHAxhdy5B10bdMXTDvpKaFetiObPRgGDARTT%2FRWS866c%2B1bXmV2FUmnijyzTPY5r7czVQTzuFZIZxZq0PjP%2F%2FwJkYsPaE2Hs2w6TFtNYWJZ6f%2F995rvet037xd0RIvP30APdz7EwwttHZOdYmRsvUA%2BE10%2Fz8sISFQDZlQxgblosecY1dcWhjQSskUAE0XHyeUt4kDzQyzqo%2FZFnbOz1Jdn%2BYpM48vGCvJYuvVrxEuf1PnXuUwQCJYHY8YZM3sdGbibqkNpsZDS11bxaz5vZAa12OQ%2B38roDkDV0vaY6zCd8hW%2FXUJEkOKZsaqlZnkwk98%2FU14ugXwu816J2m1Q58x2gjsQ%2FwTMkK%2FHD3kQqn8ecPW%2Fy7%2Fh7rFF8luyKLrKfVEQRtAuCiYQEFGL2WnxCl1xFFkuI7iYM3x9LE3ROvLzH8qE2%2FhpvjdKOm2%2F2uUeMUIxUMKUvX4pqFd%2Fzmdg8iOqau24SPApAGKOsb9xruloCve8FCbUGpURESvkQZDKyXSdGekm%2FzXu6UJdg6bj1EGdoELxQnLPlSdV5Fj95KO4F6%2F5I%2BmlTq3VdXgiVD9RlVG%2BAqfdLOgSk%2BqBLwWFOoidtEuJWa6qsAayBBaSxr%2FlHSKXsdaLxZsXokJvo2oC3YIugypTvbaSt6pkA1q27sRn2J6fc%2BeiR5%2FuHms4juR%2Fxa8eqNJNW2tm4fpLGI1nx6H4diZ84UQsz9MW7tymS%2F9%2BEB83XXmg4ZlL4hC4%2BxIi6P93NBuL4SUDFkyv4yJ7izDTQBTirc1J5pwTMFmLV4A7epzZAOcHTg45b%2FtInvNoRS6Aj4UnXj1x%2BkRp58jGK7QOjzI4wMPWGoggh6MXB7TPb6%2BH8vu%2BikmqFA7I6yjVtle8MDpa5A4LSyyBTFsPbUXP4fuzcJ4%2BuPP2A9an6A2i9cW3sL9AaO%2FxyV6PqnUPIWEYf6tO1rVASTpB1RyoJLZBNy8WvgLF4BbWqC3KmrZQhWiGD2DVeyz0FOXV1F4w37mHw7Oq8Jdhzlxs7q%2B6D8vZaxqh89ePi0FD7hkvwUwZN5S2E08hO2ZZam23DRR1KQ9KYbrPMQSZ4PNwcj6o29SwaqDWDrcyC9SsRSFQ%2FEUIea9bHnMEnhL3LBxjNyuKTiXEajlda2uXNobgngtwa91FGka63cxucZLXe1q39N9y2WrhYlu4wPH2wBiovTAtZwd650HQzx6NrwcU5qgaNeWAfKvn7UQpw8aRE0Doo9OGuOVHmaBWj2wuqs1fbIn6FjPl2lPCyNlOJZ5yp92HsJiESRc982qnUcJLuoeFSv229E6cNqqasuTOo9WBeQoWKi%2FHjvqQDP3q09Zl%2FF7I0ue1Z93emX%2F2qyKzfia%2Blyrb5TS3XR9O%2BigzNgxoQWIPULkRKLNQ54xuNl6ATZXCHzbQB9hqPaRBj7bsH402N8u9K9hQPrdTIASmyPNEZMZCquMBYUKWEq%2FupIGxhaLzbXGD4JHa6bpInFFGAq%2Bl%2B26M8ryFVtN%2BlydVQb9n5NVbPtf%2FwONb9M9mh7S3CaieJz0HGVur%2BbDl%2BLzFuV8f49LCbQJ8%2BCiPjTy2z34Q5rjOA2jpWTx7LWj8MzZ0MTwxOACPQb3xEvDZhoMLr0F00ucNvPDtuCpLyTM4eofLLFYOADzsZM3PEoxkaAvC300XX7b71VsVef97GsL8iclSiDVJBZ%2FnNsKF8sytvo7rAR5J8aDFdX6swM7pitMWA4U1FgZM31a%2F14GWXTy%2Fa1DzptFGKHBjOZlJX%2Fp%2FVepKyPOqDGzjJ36iGqcCQfH8kZUY6ghwJjaJ1ufJeeCteHJBbxwJTJBi20EpvbhG841kDnaJ2ldMKgyA4JFL7%2B41eqgw%2Fg4QihhTkJJ%2FvRPk4MUj2wVd5IXL0VsaIZs3R9Ui%2Fi30oM7CVmQqZNS6Q5QAT%2Fy6vFZAoNfsSzE2WKyGealVykcE%2FUTcME5o3FVKXqaOSe54MSKmBPJD8H1w%2F276%2BdzC%2FKwSThl1k9k75ZX8Wr4KLtwHjdtHqfN7CXfJeF66Kmyg%2BBzTV7KcCWmzz7IPryHbnw2ssJcWhfmhS%2BXn9xLiDjjJJuYf3kjHfNpKrHu3cFz0Va3FaEZ3IjBHG8zL%2FrgJ1O1IMzE2lTjwAl0jJ1uPU0X1YdHYfoC7EEcRbRSiKCUNypQiiYIb53JQG4gtXUxFxpYYGi5P3dkj9Gd0dTKmB3Fib4JkceFDsPp%2FimRBc%2FIK%2BBaNLCv4MeXr7s5LHFHrjuGezhHcf2vt2ANh5njW3E5kthYiXZ1erphXFTxZDYgvEqzE%2F8lKyc6y24DoePpefGijiO16C2w7pk0w1kROXJDdTrtDY%2BoGiMN%2FYfGQsEjscUaTn9FvpviVyltVFO%2FFZJ%2FYOU2x4yB9qYziRTXTwNNR4TlpZPmvnPC4Ns965ZfTLzRGAJ%2FhBSZDh3GqP91ovYLD2Ck3xT3oBZZcJR9UwwMYExH60S7%2F7uozEZ3tyot2n98GUYj2XGTGPEq4dehCwy%2F%2FdD31LmL%2BGdhBEKURT%2BzX%2BhrL7OSrO4Ow%2BS0vI%2Bnq54G%2BHxLlOZzpCHnUabusOltPaMK1W6gwLHQRwJTl2sRjpfVyQUlWhBtcTxfTYH0xh0cO9oD0jgSFO%2BUIJPQ3gxzVBOJX5Ig2yQyyl1q9mZsvOTx62Y4YrPSoB%2FPYZi%2B3FBL6pSjgxUgs61ZuUv1e51E%2BfZfK28QC5d9IFC6SvhxujYyhXAkohAgGRA4%2FmdYxAjJG%2FSA2JRIu0MS5hyvhrKBXqQ9aBZqpfw543wfB5%2FPC4oXVUFtfSkWEiDiVL%2BBgeU8T4ojkkhiG1%2FnADcDFy347YkVNpjLoW%2FQ7z%2FO%2F1Zog4zMsXWsDKqfE9hXP%2BAIoi1QOKATExz9ZDYucupidLjBphnojms4zfyZX6KclxWOzZ5QnizZpQ3oldhi9h4wRgNNTn2nyd9WyaYnR8NTZIcjMNvcKhYRxMF3qcijbOv3UG2bKww2icIvBITmFFIWHc22iOXaki9xTI68wBvV1qSJveG7OB7Attn5RXA3J6MOvPSFkYVI4Re9F4srwZoLa21F8d10iUuQn02QN0hp%2B0JyH4xbnBwRtyRpQbS7gecOjwxWgh2zq7FyKU430%2BIeQd1Mg3yDu6tUXDecgIuMspRrUoUz4x3souoJZePK684%2BunkK%2FAtg5biBZXkoJs5twoN4O8vIjEg5vNQuCEsNrcCIuOTVAvl6P%2FhcLVhTA%2BrepnE1Dtt0ZgajZH%2FaMyEv9%2Fge0%2B%2F3oVhiQp%2FAoZHyEqopkM1z7oGacobvvgYSd29BVlPuzzLEbXsv0Q7qzKzHWRBOylRThatjy5Sz%2FTJ17dGEGj%2Bu%2Bg3k9WYrT4UsbSd6bHE42Ztj7oUmruxXrZRZ50mwGcqPnGIPNb0AXiP9nDmh6wiZkJ9T5IyZFR2UCKUlC71DDcvxGC6mqWQqIe8kLmD0NyQYh4EW%2FQe2Lr1nA74OOcJgXx%2FFS0kQq9bFjT5b6Lzt8iJL%2BGh65U704vrdMMK1A%2FTaQuqmZHoULigYxg7sVNoEsm5nobT2MGb5JhbJIExbagvfj8V2kUbCilU%2BuLBcwrxZGSY8XUtdo57zMnw8VNP4uZ%2Fk0hrV%2BUNeJL504jIBmXNUG4OgzoMI%2B0Ak3N6qVLa5lJJSt5%2BcbIVmRsCYlJyIzCtixss9%2BF57kFsX7nkpu3r0y4awhw8wkpyB4lXKxcvAEAlS%2FAydqzqXy6lT5wsNeaXx6lutWi3o9YWgBXVB14xu2bhVlZl5bbtymwO6lvQb2IirVaG5ClcfyjubJmiSfzlP%2Bt2T01fg6o0UjoE9jL%2FSMvXh2xyCw23MOy8rsM0Fd4RkR4lRN%2Bbq5W6KDy2XC%2FjtWbldQUKdd34GPZQ%2BRPU52muyWhDPsQ6AnJXGTKqL%2FrUyPELfASB9srk0Vcq1NTTyVcysXIxi8ZghEE8jgbVYJS7udqNqyrNUbNDYLPEP%2F5FTw%2BD6EXDaUAlVWGK4YbfNrrZkwAQf5UyDs%2FIgfeamKJO1qrYSpZWXO1uPeEP91LvnufvRSvaQEgMe21D5rAqnSrcQlDRYk22Nwo%2FqKg2L2WtNvkRtlMPm7794xgtau8FtzM3rdoEnmH%2FKUtLgHQzjVVhPW6oVH39xvi%2FEWJ7%2FMxpAX6mPcq%2BiQsInED0WEgUAXQMdLKl6HgBOcw3diuT4W27Zx3NPpAQIPm0rWG5cuVmRXNXWf4pBdPQUY1ZsPptSGQT0mbHyqOPbi268zpQ6drJQor8o4W7TjF93JiUztIOIEH6SWTVVmIHU%2B02f2IfA4Jkv3XTPyWv218xeMb00aM1WDVWx79PUKf%2FgNyotMoaJp3PO9vOfvKNE6IHzCPgiJJrWW43FaHjvGp5kVdJ9YfPQNPfJTeaNRje%2Fpg7XDeN%2Fvvc%2BrLazMhaHH7SlI6boNKgvQ%2FwRIgRCk%2Bl1RQUbNPL6ZXXngBNO11Jd746gYk24lT8fOj4OUm0gLmIg79SFV2xMZzrXKDuZB8UhIfiCqPNYg%2FYW7zkn%2BrzPBghifbwGBBD3xgU6P32dNdW0jXlyB2FmN9kCKuRh9Ez%2FtoLd4X2IWmJcVPOIhlj73iaa1CaV3HIGrh3f6HV8ssBKo%2Fw9QWMqdLyxXNW1fizPOKgUuQG7Tx8peSNwKmlAw2jmwCFhd9e1nyJNc7w6bClmoyIy2ROH%2FT7Q1s5%2B9DT7Hn%2F%2FvN2GF5J1iDNnhGkTnYDBlf9HmOf1r3wake13j%2B0YeZXLRmMqXXNC8BU5rAVFYXJBChMdzbhEA8R1gXln6bcW%2FvJV8U1jJMOZgCC%2FSQCZAISeRKPZqgOyLHV8%2Fowrp7hEXbkS4YyC6BeSI3VsyNmgMw29KVlomZNCopzawwYt1kQxNg2BWYtqOKlizU2HTbXYBqmgTOD8LrcId7cAG%2BmCOiH3AB8mYm2LqqmnOnfUYd5lVBX8EXfx7mr9QziCGYtFKAr5EiWlLvruhWvfyOFegCc5AaH0Ana5IreIoq62P%2BxB5oUq053I6bzXmtAqnrPpf2LHZ7BUjQ3ZsLzvUQTjwDHQFlWbu386XcA9NWpswi0%2BchZg2B4m7J6bVlLVd9WB7Qpehz1R1Umq%2BBVf2zhr12%2FF1xFX4YZFF%2B80D%2FR2eDRPVig5HV%2BpHvuyic1OivnaM5f7JAsJK30XWvrOUbgOCUzlqRsW7ocqKG0Yyqm7Quo3XaNduNaVkK3kde5yacpUqBqOtwrEyV%2Bk2uEmkvwT%2FlSAI08GRE1kS8PfxLj2DTM%2FZ7ZmDSYWmQHqqyrWiOGxemDSDBBFsMJ2J4ts5dtvEoL4TEpq79fjzlxtlcRHQASxo0hLypBfBJRHyJp7MxPON8cxA7yvFX43JthbvmZ67vOUmSnI%2BjeyRVFDzeGoFR62jfrhvUpy5NH3aQba5bcmD1lUFr74bQelrcFP%2FEHihhf8ELCMGdyYUbTxRxdtdWdiMbPQ8vOKPvZWUkhD2XXLFdUFTD3X8V3kjWPyGiBGS81BLoqGmMC7ebQ23hVahEkwMSz75GUy%2Bnv7%2FzTAsf8AgySKb807PG%2FsUBgBxh7SIyhfnnGyi589%2BZHwmCCZjQXXMf8znMieSMCD6WFmjonLKgNOOON5JRbfaGQt3vZHopt%2FaWeunUAITO%2BlY9htLWqh0jiAkYNhLLv0s%2BmPclurOsflzDsFAcqRFsO9B1qtEiK%2BzNRPDJzwS6knZpg%3D%3D&ctl00%24xqdpl=%E6%97%97%E5%B1%B1%E6%A0%A1%E5%8C%BA
'
;
return
fetch
(
url
,
{
method
:
'
POST
'
,
body
:
data
,
headers
:
{
'
Content-Type
'
:
'
application/x-www-form-urlencoded
'
,
Host
:
'
jwcjwxt2.fzu.edu.cn:81
'
,
Connection
:
'
Keep-Alive
'
,
'
Accept-Encoding
'
:
'
gzip
'
,
'
User-Agent
'
:
'
okhttp/4.9.0
'
,
// Host: 'jwcjwxt2.fzu.edu.cn:81',
// Connection: 'keep-alive',
// Accept: "*/*",
// 'Accept-Encoding': 'gzip,deflate',
// 'User-Agent': 'okhttp/4.9.2',
},
});
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录