5
5
AESGCMDecrypt ,
6
6
generateAESRandomKey ,
7
7
generateAESRandomIV
8
- } from './RSAAndAESEn-DecryptorUtil' ;
8
+ } from './RequestcryptUtil' ;
9
+ import URI from 'urijs' ;
9
10
10
11
/**
11
12
* @private
@@ -16,8 +17,8 @@ import {
16
17
* @param {string } serverUrl - 服务地址。
17
18
*/
18
19
export class EncryptRequest {
19
- constructor ( serverUrl = '' ) {
20
- this . serverUrl = serverUrl . split ( '' ) . slice ( - 1 ) [ 0 ] === '/' ? serverUrl : ` ${ serverUrl } /` ;
20
+ constructor ( serverUrl ) {
21
+ this . serverUrl = serverUrl ;
21
22
this . tunnelUrl = undefined ;
22
23
this . blockedUrlRegex = {
23
24
HEAD : [ ] ,
@@ -95,7 +96,7 @@ export class EncryptRequest {
95
96
*/
96
97
async _getRSAPublicKey ( ) {
97
98
try {
98
- const response = await FetchRequest . get ( ` ${ this . serverUrl } services/security/tunnel/v1/publickey` ) ;
99
+ const response = await FetchRequest . get ( URI ( this . serverUrl ) . segment ( ' services/security/tunnel/v1/publickey' ) . toString ( ) ) ;
99
100
// 解析publicKey
100
101
const publicKeyObj = await response . json ( ) ;
101
102
// 生成AES密钥
@@ -126,7 +127,7 @@ export class EncryptRequest {
126
127
throw 'fetch RSA publicKey failed' ;
127
128
}
128
129
// 创建隧道
129
- const response = await FetchRequest . post ( ` ${ this . serverUrl } services/security/tunnel/v1/tunnels` , data ) ;
130
+ const response = await FetchRequest . post ( URI ( this . serverUrl ) . segment ( ' services/security/tunnel/v1/tunnels' ) . toString ( ) , data ) ;
130
131
const result = await response . json ( ) ;
131
132
Object . assign ( this , {
132
133
tunnelUrl : result . tunnelUrl ,
0 commit comments