@vtecx/vtecxnext 1.0.6 → 1.0.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/vtecxnext.d.ts +29 -0
- package/dist/vtecxnext.js +695 -93
- package/package.json +1 -1
package/dist/vtecxnext.js
CHANGED
|
@@ -27,7 +27,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
exports.deleteSignature = exports.putSignatures = exports.putSignature = exports.toPdf = exports.getBQCsv = exports.getBQ = exports.deleteBQ = exports.postBQ = exports.getPage = exports.pagination = exports.getSessionLong = exports.getSessionString = exports.getSessionEntry = exports.getSessionFeed = exports.deleteSessionLong = exports.deleteSessionString = exports.deleteSessionEntry = exports.deleteSessionFeed = exports.incrementSession = exports.setSessionLong = exports.setSessionString = exports.setSessionEntry = exports.setSessionFeed = exports.getRangeids = exports.rangeids = exports.setids = exports.getids = exports.addids = exports.allocids = exports.deleteFolder = exports.deleteEntry = exports.put = exports.post = exports.count = exports.getFeed = exports.getEntry = exports.log = exports.rxid = exports.service = exports.isLoggedin = exports.whoami = exports.account = exports.uid = exports.now = exports.logout = exports.loginWithRxid = exports.login = exports.sendMessage = exports.checkXRequestedWith = exports.hello = void 0;
|
|
30
|
-
exports.VtecxNextError = exports.buffer = exports.oauthCallbackLine = exports.oauthLine = exports.removealias = exports.addalias = exports.removeacl = exports.addacl = exports.getcontent = exports.deletecontent = exports.putcontent = exports.savefiles = exports.deleteusers = exports.deleteuser = exports.canceluser = exports.activateusers = exports.activateuser = exports.revokeusers = exports.revokeuser = exports.userstatus = exports.changeaccount_verify = exports.changeaccount = exports.changepassByAdmin = exports.changepass = exports.passreset = exports.adduserByAdmin = exports.adduser = exports.noGroupMember = exports.leaveGroup = exports.joinGroup = exports.getMessageQueue = exports.setMessageQueue = exports.setMessageQueueStatus = exports.pushNotification = exports.sendMail = exports.checkSignature = void 0;
|
|
30
|
+
exports.FetchError = exports.VtecxNextError = exports.buffer = exports.oauthCallbackLine = exports.oauthLine = exports.removealias = exports.addalias = exports.removeacl = exports.addacl = exports.getcontent = exports.deletecontent = exports.putcontent = exports.savefiles = exports.deleteusers = exports.deleteuser = exports.canceluser = exports.activateusers = exports.activateuser = exports.revokeusers = exports.revokeuser = exports.userstatus = exports.changeaccount_verify = exports.changeaccount = exports.changepassByAdmin = exports.changepass = exports.passreset = exports.adduserByAdmin = exports.adduser = exports.isAdmin = exports.isGroupMember = exports.getGroups = exports.noGroupMember = exports.leaveGroup = exports.joinGroup = exports.getMessageQueue = exports.setMessageQueue = exports.setMessageQueueStatus = exports.pushNotification = exports.sendMail = exports.checkSignature = void 0;
|
|
31
31
|
const sqlstring_1 = __importDefault(require("sqlstring"));
|
|
32
32
|
const formidable_1 = __importDefault(require("formidable"));
|
|
33
33
|
const fs_1 = __importDefault(require("fs"));
|
|
@@ -89,7 +89,13 @@ const login = async (req, res, wsse, reCaptchaToken) => {
|
|
|
89
89
|
const method = 'GET';
|
|
90
90
|
const url = `/d/?_login${param}`;
|
|
91
91
|
const headers = { 'X-WSSE': `${wsse}` };
|
|
92
|
-
|
|
92
|
+
let response;
|
|
93
|
+
try {
|
|
94
|
+
response = await fetchVtecx(method, url, headers);
|
|
95
|
+
}
|
|
96
|
+
catch (e) {
|
|
97
|
+
throw newFetchError(e, true);
|
|
98
|
+
}
|
|
93
99
|
//const feed = await response.json()
|
|
94
100
|
// vte.cxからのset-cookieを転記
|
|
95
101
|
setCookie(response, res);
|
|
@@ -121,7 +127,13 @@ const loginWithRxid = async (req, res, rxid) => {
|
|
|
121
127
|
// reCAPTCHA tokenは任意
|
|
122
128
|
const method = 'GET';
|
|
123
129
|
const url = `/d/?_login&_RXID=${rxid}`;
|
|
124
|
-
|
|
130
|
+
let response;
|
|
131
|
+
try {
|
|
132
|
+
response = await requestVtecx(method, url, req);
|
|
133
|
+
}
|
|
134
|
+
catch (e) {
|
|
135
|
+
throw newFetchError(e, true);
|
|
136
|
+
}
|
|
125
137
|
const feed = await response.json();
|
|
126
138
|
// vte.cxからのset-cookieを転記
|
|
127
139
|
setCookie(response, res);
|
|
@@ -149,7 +161,13 @@ const logout = async (req, res) => {
|
|
|
149
161
|
// vte.cxへリクエスト
|
|
150
162
|
const method = 'GET';
|
|
151
163
|
const url = '/d/?_logout';
|
|
152
|
-
|
|
164
|
+
let response;
|
|
165
|
+
try {
|
|
166
|
+
response = await requestVtecx(method, url, req);
|
|
167
|
+
}
|
|
168
|
+
catch (e) {
|
|
169
|
+
throw newFetchError(e, true);
|
|
170
|
+
}
|
|
153
171
|
//console.log(`[vtecxnext logout] response=${response}`)
|
|
154
172
|
// vte.cxからのset-cookieを転記
|
|
155
173
|
setCookie(response, res);
|
|
@@ -171,7 +189,13 @@ const now = async () => {
|
|
|
171
189
|
// vte.cxへリクエスト
|
|
172
190
|
const method = 'GET';
|
|
173
191
|
const url = '/d/?_now';
|
|
174
|
-
|
|
192
|
+
let response;
|
|
193
|
+
try {
|
|
194
|
+
response = await requestVtecx(method, url);
|
|
195
|
+
}
|
|
196
|
+
catch (e) {
|
|
197
|
+
throw newFetchError(e, true);
|
|
198
|
+
}
|
|
175
199
|
//console.log(`[vtecxnext now] response=${response}`)
|
|
176
200
|
// レスポンスのエラーチェック
|
|
177
201
|
await checkVtecxResponse(response);
|
|
@@ -191,7 +215,13 @@ const uid = async (req, res) => {
|
|
|
191
215
|
// vte.cxへリクエスト
|
|
192
216
|
const method = 'GET';
|
|
193
217
|
const url = '/d/?_uid';
|
|
194
|
-
|
|
218
|
+
let response;
|
|
219
|
+
try {
|
|
220
|
+
response = await requestVtecx(method, url, req);
|
|
221
|
+
}
|
|
222
|
+
catch (e) {
|
|
223
|
+
throw newFetchError(e, true);
|
|
224
|
+
}
|
|
195
225
|
//console.log(`[vtecxnext uid] response=${response}`)
|
|
196
226
|
// vte.cxからのset-cookieを転記
|
|
197
227
|
setCookie(response, res);
|
|
@@ -213,7 +243,13 @@ const account = async (req, res) => {
|
|
|
213
243
|
// vte.cxへリクエスト
|
|
214
244
|
const method = 'GET';
|
|
215
245
|
const url = '/d/?_account';
|
|
216
|
-
|
|
246
|
+
let response;
|
|
247
|
+
try {
|
|
248
|
+
response = await requestVtecx(method, url, req);
|
|
249
|
+
}
|
|
250
|
+
catch (e) {
|
|
251
|
+
throw newFetchError(e, true);
|
|
252
|
+
}
|
|
217
253
|
//console.log(`[vtecxnext account] response=${response}`)
|
|
218
254
|
// vte.cxからのset-cookieを転記
|
|
219
255
|
setCookie(response, res);
|
|
@@ -235,7 +271,13 @@ const whoami = async (req, res) => {
|
|
|
235
271
|
// vte.cxへリクエスト
|
|
236
272
|
const method = 'GET';
|
|
237
273
|
const url = '/d/?_whoami';
|
|
238
|
-
|
|
274
|
+
let response;
|
|
275
|
+
try {
|
|
276
|
+
response = await requestVtecx(method, url, req);
|
|
277
|
+
}
|
|
278
|
+
catch (e) {
|
|
279
|
+
throw newFetchError(e, true);
|
|
280
|
+
}
|
|
239
281
|
//console.log(`[vtecxnext whoami] response=${response}`)
|
|
240
282
|
// vte.cxからのset-cookieを転記
|
|
241
283
|
setCookie(response, res);
|
|
@@ -273,7 +315,13 @@ const service = async (req, res) => {
|
|
|
273
315
|
// vte.cxへリクエスト
|
|
274
316
|
const method = 'GET';
|
|
275
317
|
const url = '/d/?_service';
|
|
276
|
-
|
|
318
|
+
let response;
|
|
319
|
+
try {
|
|
320
|
+
response = await requestVtecx(method, url, req);
|
|
321
|
+
}
|
|
322
|
+
catch (e) {
|
|
323
|
+
throw newFetchError(e, true);
|
|
324
|
+
}
|
|
277
325
|
//console.log(`[vtecxnext service] response=${response}`)
|
|
278
326
|
// vte.cxからのset-cookieを転記
|
|
279
327
|
setCookie(response, res);
|
|
@@ -295,7 +343,13 @@ const rxid = async (req, res) => {
|
|
|
295
343
|
// vte.cxへリクエスト
|
|
296
344
|
const method = 'GET';
|
|
297
345
|
const url = '/d/?_getrxid';
|
|
298
|
-
|
|
346
|
+
let response;
|
|
347
|
+
try {
|
|
348
|
+
response = await requestVtecx(method, url, req);
|
|
349
|
+
}
|
|
350
|
+
catch (e) {
|
|
351
|
+
throw newFetchError(e, true);
|
|
352
|
+
}
|
|
299
353
|
//console.log(`[vtecxnext uid] response=${response}`)
|
|
300
354
|
// vte.cxからのset-cookieを転記
|
|
301
355
|
setCookie(response, res);
|
|
@@ -316,12 +370,18 @@ exports.rxid = rxid;
|
|
|
316
370
|
* @return true if successful
|
|
317
371
|
*/
|
|
318
372
|
const log = async (req, res, message, title, subtitle) => {
|
|
319
|
-
const logTitle = title
|
|
320
|
-
const logSubtitle = subtitle
|
|
373
|
+
const logTitle = title ?? 'JavaScript';
|
|
374
|
+
const logSubtitle = subtitle ?? 'INFO';
|
|
321
375
|
const feed = [{ 'title': logTitle, 'subtitle': logSubtitle, 'summary': message }];
|
|
322
376
|
const method = 'POST';
|
|
323
377
|
const url = `/p/?_log`;
|
|
324
|
-
|
|
378
|
+
let response;
|
|
379
|
+
try {
|
|
380
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
381
|
+
}
|
|
382
|
+
catch (e) {
|
|
383
|
+
throw newFetchError(e, true);
|
|
384
|
+
}
|
|
325
385
|
//console.log(`[vtecxnext log] response. status=${response.status}`)
|
|
326
386
|
// vte.cxからのset-cookieを転記
|
|
327
387
|
setCookie(response, res);
|
|
@@ -346,7 +406,13 @@ const getEntry = async (req, res, uri, targetService) => {
|
|
|
346
406
|
// vte.cxへリクエスト
|
|
347
407
|
const method = 'GET';
|
|
348
408
|
const url = `/p${uri}?e`;
|
|
349
|
-
|
|
409
|
+
let response;
|
|
410
|
+
try {
|
|
411
|
+
response = await requestVtecx(method, url, req, null, null, targetService);
|
|
412
|
+
}
|
|
413
|
+
catch (e) {
|
|
414
|
+
throw newFetchError(e, true);
|
|
415
|
+
}
|
|
350
416
|
//console.log(`[vtecxnext getEntry] response=${response}`)
|
|
351
417
|
// vte.cxからのset-cookieを転記
|
|
352
418
|
setCookie(response, res);
|
|
@@ -370,7 +436,13 @@ const getFeed = async (req, res, uri, targetService) => {
|
|
|
370
436
|
// vte.cxへリクエスト
|
|
371
437
|
const method = 'GET';
|
|
372
438
|
const url = `/p${uri}${uri.includes('?') ? '&' : '?'}f`;
|
|
373
|
-
|
|
439
|
+
let response;
|
|
440
|
+
try {
|
|
441
|
+
response = await requestVtecx(method, url, req, null, null, targetService);
|
|
442
|
+
}
|
|
443
|
+
catch (e) {
|
|
444
|
+
throw newFetchError(e, true);
|
|
445
|
+
}
|
|
374
446
|
//console.log(`[vtecxnext getFeed] response=${response}`)
|
|
375
447
|
// vte.cxからのset-cookieを転記
|
|
376
448
|
setCookie(response, res);
|
|
@@ -394,7 +466,13 @@ const count = async (req, res, uri, targetService) => {
|
|
|
394
466
|
// vte.cxへリクエスト
|
|
395
467
|
const method = 'GET';
|
|
396
468
|
const url = `/p${uri}${uri.includes('?') ? '&' : '?'}c`;
|
|
397
|
-
|
|
469
|
+
let response;
|
|
470
|
+
try {
|
|
471
|
+
response = await requestVtecx(method, url, req, null, null, targetService);
|
|
472
|
+
}
|
|
473
|
+
catch (e) {
|
|
474
|
+
throw newFetchError(e, true);
|
|
475
|
+
}
|
|
398
476
|
//console.log(`[vtecxnext count] response=${response}`)
|
|
399
477
|
// vte.cxからのset-cookieを転記
|
|
400
478
|
setCookie(response, res);
|
|
@@ -424,7 +502,13 @@ const post = async (req, res, feed, uri, targetService) => {
|
|
|
424
502
|
// vte.cxへリクエスト
|
|
425
503
|
const method = 'POST';
|
|
426
504
|
const url = `/p${uri ? uri : '/'}?e`;
|
|
427
|
-
|
|
505
|
+
let response;
|
|
506
|
+
try {
|
|
507
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed), null, targetService);
|
|
508
|
+
}
|
|
509
|
+
catch (e) {
|
|
510
|
+
throw newFetchError(e, true);
|
|
511
|
+
}
|
|
428
512
|
//console.log(`[vtecxnext post] response. status=${response.status}`)
|
|
429
513
|
// vte.cxからのset-cookieを転記
|
|
430
514
|
setCookie(response, res);
|
|
@@ -455,7 +539,13 @@ const put = async (req, res, feed, isbulk, parallel, async, targetService) => {
|
|
|
455
539
|
}
|
|
456
540
|
const url = `/p/?e${additionalParam}`;
|
|
457
541
|
//console.log(`[vtecxnext put] url=${url}`)
|
|
458
|
-
|
|
542
|
+
let response;
|
|
543
|
+
try {
|
|
544
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed), null, targetService);
|
|
545
|
+
}
|
|
546
|
+
catch (e) {
|
|
547
|
+
throw newFetchError(e, true);
|
|
548
|
+
}
|
|
459
549
|
//console.log(`[vtecxnext put] response. status=${response.status}`)
|
|
460
550
|
// vte.cxからのset-cookieを転記
|
|
461
551
|
setCookie(response, res);
|
|
@@ -480,7 +570,13 @@ const deleteEntry = async (req, res, uri, revision, targetService) => {
|
|
|
480
570
|
const method = 'DELETE';
|
|
481
571
|
const param = revision ? `&r=${revision}` : '';
|
|
482
572
|
const url = `/p${uri}?e${param}`;
|
|
483
|
-
|
|
573
|
+
let response;
|
|
574
|
+
try {
|
|
575
|
+
response = await requestVtecx(method, url, req, null, null, targetService);
|
|
576
|
+
}
|
|
577
|
+
catch (e) {
|
|
578
|
+
throw newFetchError(e, true);
|
|
579
|
+
}
|
|
484
580
|
//console.log(`[vtecxnext deleteEntry] response. status=${response.status}`)
|
|
485
581
|
// vte.cxからのset-cookieを転記
|
|
486
582
|
setCookie(response, res);
|
|
@@ -504,7 +600,13 @@ const deleteFolder = async (req, res, uri, async, targetService) => {
|
|
|
504
600
|
// vte.cxへリクエスト
|
|
505
601
|
const method = 'DELETE';
|
|
506
602
|
const url = `/p${uri}?_rf${async ? '&_async' : ''}`;
|
|
507
|
-
|
|
603
|
+
let response;
|
|
604
|
+
try {
|
|
605
|
+
response = await requestVtecx(method, url, req, null, null, targetService);
|
|
606
|
+
}
|
|
607
|
+
catch (e) {
|
|
608
|
+
throw newFetchError(e, true);
|
|
609
|
+
}
|
|
508
610
|
//console.log(`[vtecxnext deleteFolder] response. status=${response.status}`)
|
|
509
611
|
// vte.cxからのset-cookieを転記
|
|
510
612
|
setCookie(response, res);
|
|
@@ -529,7 +631,13 @@ const allocids = async (req, res, uri, num, targetService) => {
|
|
|
529
631
|
// vte.cxへリクエスト
|
|
530
632
|
const method = 'GET';
|
|
531
633
|
const url = `/p${uri}?_allocids=${num}`;
|
|
532
|
-
|
|
634
|
+
let response;
|
|
635
|
+
try {
|
|
636
|
+
response = await requestVtecx(method, url, req, null, null, targetService);
|
|
637
|
+
}
|
|
638
|
+
catch (e) {
|
|
639
|
+
throw newFetchError(e, true);
|
|
640
|
+
}
|
|
533
641
|
//console.log(`[vtecxnext allocids] response=${response}`)
|
|
534
642
|
// vte.cxからのset-cookieを転記
|
|
535
643
|
setCookie(response, res);
|
|
@@ -556,7 +664,13 @@ const addids = async (req, res, uri, num, targetService) => {
|
|
|
556
664
|
// vte.cxへリクエスト
|
|
557
665
|
const method = 'PUT';
|
|
558
666
|
const url = `/p${uri}?_addids=${num}`;
|
|
559
|
-
|
|
667
|
+
let response;
|
|
668
|
+
try {
|
|
669
|
+
response = await requestVtecx(method, url, req, null, null, targetService);
|
|
670
|
+
}
|
|
671
|
+
catch (e) {
|
|
672
|
+
throw newFetchError(e, true);
|
|
673
|
+
}
|
|
560
674
|
//console.log(`[vtecxnext addids] response=${response}`)
|
|
561
675
|
// vte.cxからのset-cookieを転記
|
|
562
676
|
setCookie(response, res);
|
|
@@ -581,7 +695,13 @@ const getids = async (req, res, uri, targetService) => {
|
|
|
581
695
|
// vte.cxへリクエスト
|
|
582
696
|
const method = 'GET';
|
|
583
697
|
const url = `/p${uri}?_getids`;
|
|
584
|
-
|
|
698
|
+
let response;
|
|
699
|
+
try {
|
|
700
|
+
response = await requestVtecx(method, url, req, null, null, targetService);
|
|
701
|
+
}
|
|
702
|
+
catch (e) {
|
|
703
|
+
throw newFetchError(e, true);
|
|
704
|
+
}
|
|
585
705
|
//console.log(`[vtecxnext getids] response=${response}`)
|
|
586
706
|
// vte.cxからのset-cookieを転記
|
|
587
707
|
setCookie(response, res);
|
|
@@ -608,7 +728,13 @@ const setids = async (req, res, uri, num, targetService) => {
|
|
|
608
728
|
// vte.cxへリクエスト
|
|
609
729
|
const method = 'PUT';
|
|
610
730
|
const url = `/p${uri}?_setids=${num}`;
|
|
611
|
-
|
|
731
|
+
let response;
|
|
732
|
+
try {
|
|
733
|
+
response = await requestVtecx(method, url, req, null, null, targetService);
|
|
734
|
+
}
|
|
735
|
+
catch (e) {
|
|
736
|
+
throw newFetchError(e, true);
|
|
737
|
+
}
|
|
612
738
|
//console.log(`[vtecxnext setids] response=${response}`)
|
|
613
739
|
// vte.cxからのset-cookieを転記
|
|
614
740
|
setCookie(response, res);
|
|
@@ -636,7 +762,13 @@ const rangeids = async (req, res, uri, range) => {
|
|
|
636
762
|
const method = 'PUT';
|
|
637
763
|
const url = `/p${uri}?_rangeids`;
|
|
638
764
|
const feed = { feed: { 'title': range } };
|
|
639
|
-
|
|
765
|
+
let response;
|
|
766
|
+
try {
|
|
767
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
768
|
+
}
|
|
769
|
+
catch (e) {
|
|
770
|
+
throw newFetchError(e, true);
|
|
771
|
+
}
|
|
640
772
|
//console.log(`[vtecxnext rangeids] response=${response}`)
|
|
641
773
|
// vte.cxからのset-cookieを転記
|
|
642
774
|
setCookie(response, res);
|
|
@@ -661,7 +793,13 @@ const getRangeids = async (req, res, uri) => {
|
|
|
661
793
|
// vte.cxへリクエスト
|
|
662
794
|
const method = 'GET';
|
|
663
795
|
const url = `/p${uri}?_rangeids`;
|
|
664
|
-
|
|
796
|
+
let response;
|
|
797
|
+
try {
|
|
798
|
+
response = await requestVtecx(method, url, req);
|
|
799
|
+
}
|
|
800
|
+
catch (e) {
|
|
801
|
+
throw newFetchError(e, true);
|
|
802
|
+
}
|
|
665
803
|
//console.log(`[vtecxnext getrangeids] response=${response}`)
|
|
666
804
|
// vte.cxからのset-cookieを転記
|
|
667
805
|
setCookie(response, res);
|
|
@@ -688,7 +826,13 @@ const setSessionFeed = async (req, res, name, feed) => {
|
|
|
688
826
|
// vte.cxへリクエスト
|
|
689
827
|
const method = 'PUT';
|
|
690
828
|
const url = `/p/?_sessionfeed=${name}`;
|
|
691
|
-
|
|
829
|
+
let response;
|
|
830
|
+
try {
|
|
831
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
832
|
+
}
|
|
833
|
+
catch (e) {
|
|
834
|
+
throw newFetchError(e, true);
|
|
835
|
+
}
|
|
692
836
|
//console.log(`[vtecxnext setSessionFeed] response. status=${response.status}`)
|
|
693
837
|
// vte.cxからのset-cookieを転記
|
|
694
838
|
setCookie(response, res);
|
|
@@ -714,7 +858,13 @@ const setSessionEntry = async (req, res, name, entry) => {
|
|
|
714
858
|
const method = 'PUT';
|
|
715
859
|
const url = `/p/?_sessionentry=${name}`;
|
|
716
860
|
const feed = { feed: { 'entry': entry } };
|
|
717
|
-
|
|
861
|
+
let response;
|
|
862
|
+
try {
|
|
863
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
864
|
+
}
|
|
865
|
+
catch (e) {
|
|
866
|
+
throw newFetchError(e, true);
|
|
867
|
+
}
|
|
718
868
|
//console.log(`[vtecxnext setSessionEntry] response. status=${response.status}`)
|
|
719
869
|
// vte.cxからのset-cookieを転記
|
|
720
870
|
setCookie(response, res);
|
|
@@ -740,7 +890,13 @@ const setSessionString = async (req, res, name, str) => {
|
|
|
740
890
|
const method = 'PUT';
|
|
741
891
|
const url = `/p/?_sessionstring=${name}`;
|
|
742
892
|
const feed = { feed: { 'title': str } };
|
|
743
|
-
|
|
893
|
+
let response;
|
|
894
|
+
try {
|
|
895
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
896
|
+
}
|
|
897
|
+
catch (e) {
|
|
898
|
+
throw newFetchError(e, true);
|
|
899
|
+
}
|
|
744
900
|
//console.log(`[vtecxnext setSessionString] response. status=${response.status}`)
|
|
745
901
|
// vte.cxからのset-cookieを転記
|
|
746
902
|
setCookie(response, res);
|
|
@@ -766,7 +922,13 @@ const setSessionLong = async (req, res, name, num) => {
|
|
|
766
922
|
const method = 'PUT';
|
|
767
923
|
const url = `/p/?_sessionlong=${name}`;
|
|
768
924
|
const feed = { feed: { 'title': String(num) } };
|
|
769
|
-
|
|
925
|
+
let response;
|
|
926
|
+
try {
|
|
927
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
928
|
+
}
|
|
929
|
+
catch (e) {
|
|
930
|
+
throw newFetchError(e, true);
|
|
931
|
+
}
|
|
770
932
|
//console.log(`[vtecxnext setSessionLong] response. status=${response.status}`)
|
|
771
933
|
// vte.cxからのset-cookieを転記
|
|
772
934
|
setCookie(response, res);
|
|
@@ -791,7 +953,13 @@ const incrementSession = async (req, res, name, num) => {
|
|
|
791
953
|
// vte.cxへリクエスト
|
|
792
954
|
const method = 'PUT';
|
|
793
955
|
const url = `/p/?_sessionincr=${name}&_num=${num}`;
|
|
794
|
-
|
|
956
|
+
let response;
|
|
957
|
+
try {
|
|
958
|
+
response = await requestVtecx(method, url, req);
|
|
959
|
+
}
|
|
960
|
+
catch (e) {
|
|
961
|
+
throw newFetchError(e, true);
|
|
962
|
+
}
|
|
795
963
|
//console.log(`[vtecxnext incrementSession] response. status=${response.status}`)
|
|
796
964
|
// vte.cxからのset-cookieを転記
|
|
797
965
|
setCookie(response, res);
|
|
@@ -816,7 +984,13 @@ const deleteSessionFeed = async (req, res, name) => {
|
|
|
816
984
|
// vte.cxへリクエスト
|
|
817
985
|
const method = 'DELETE';
|
|
818
986
|
const url = `/p/?_sessionfeed=${name}`;
|
|
819
|
-
|
|
987
|
+
let response;
|
|
988
|
+
try {
|
|
989
|
+
response = await requestVtecx(method, url, req);
|
|
990
|
+
}
|
|
991
|
+
catch (e) {
|
|
992
|
+
throw newFetchError(e, true);
|
|
993
|
+
}
|
|
820
994
|
//console.log(`[vtecxnext deleteSessionFeed] response. status=${response.status}`)
|
|
821
995
|
// vte.cxからのset-cookieを転記
|
|
822
996
|
setCookie(response, res);
|
|
@@ -839,7 +1013,13 @@ const deleteSessionEntry = async (req, res, name) => {
|
|
|
839
1013
|
// vte.cxへリクエスト
|
|
840
1014
|
const method = 'DELETE';
|
|
841
1015
|
const url = `/p/?_sessionentry=${name}`;
|
|
842
|
-
|
|
1016
|
+
let response;
|
|
1017
|
+
try {
|
|
1018
|
+
response = await requestVtecx(method, url, req);
|
|
1019
|
+
}
|
|
1020
|
+
catch (e) {
|
|
1021
|
+
throw newFetchError(e, true);
|
|
1022
|
+
}
|
|
843
1023
|
//console.log(`[vtecxnext deleteSessionEntry] response. status=${response.status}`)
|
|
844
1024
|
// vte.cxからのset-cookieを転記
|
|
845
1025
|
setCookie(response, res);
|
|
@@ -862,7 +1042,13 @@ const deleteSessionString = async (req, res, name) => {
|
|
|
862
1042
|
// vte.cxへリクエスト
|
|
863
1043
|
const method = 'DELETE';
|
|
864
1044
|
const url = `/p/?_sessionstring=${name}`;
|
|
865
|
-
|
|
1045
|
+
let response;
|
|
1046
|
+
try {
|
|
1047
|
+
response = await requestVtecx(method, url, req);
|
|
1048
|
+
}
|
|
1049
|
+
catch (e) {
|
|
1050
|
+
throw newFetchError(e, true);
|
|
1051
|
+
}
|
|
866
1052
|
//console.log(`[vtecxnext deleteSessionString] response. status=${response.status}`)
|
|
867
1053
|
// vte.cxからのset-cookieを転記
|
|
868
1054
|
setCookie(response, res);
|
|
@@ -885,7 +1071,13 @@ const deleteSessionLong = async (req, res, name) => {
|
|
|
885
1071
|
// vte.cxへリクエスト
|
|
886
1072
|
const method = 'DELETE';
|
|
887
1073
|
const url = `/p/?_sessionlong=${name}`;
|
|
888
|
-
|
|
1074
|
+
let response;
|
|
1075
|
+
try {
|
|
1076
|
+
response = await requestVtecx(method, url, req);
|
|
1077
|
+
}
|
|
1078
|
+
catch (e) {
|
|
1079
|
+
throw newFetchError(e, true);
|
|
1080
|
+
}
|
|
889
1081
|
//console.log(`[vtecxnext deleteSessionLong] response. status=${response.status}`)
|
|
890
1082
|
// vte.cxからのset-cookieを転記
|
|
891
1083
|
setCookie(response, res);
|
|
@@ -908,7 +1100,13 @@ const getSessionFeed = async (req, res, name) => {
|
|
|
908
1100
|
// vte.cxへリクエスト
|
|
909
1101
|
const method = 'GET';
|
|
910
1102
|
const url = `/p/?_sessionfeed=${name}`;
|
|
911
|
-
|
|
1103
|
+
let response;
|
|
1104
|
+
try {
|
|
1105
|
+
response = await requestVtecx(method, url, req);
|
|
1106
|
+
}
|
|
1107
|
+
catch (e) {
|
|
1108
|
+
throw newFetchError(e, true);
|
|
1109
|
+
}
|
|
912
1110
|
//console.log(`[vtecxnext getSessionFeed] response. status=${response.status}`)
|
|
913
1111
|
// vte.cxからのset-cookieを転記
|
|
914
1112
|
setCookie(response, res);
|
|
@@ -932,7 +1130,13 @@ const getSessionEntry = async (req, res, name) => {
|
|
|
932
1130
|
// vte.cxへリクエスト
|
|
933
1131
|
const method = 'GET';
|
|
934
1132
|
const url = `/p/?_sessionentry=${name}`;
|
|
935
|
-
|
|
1133
|
+
let response;
|
|
1134
|
+
try {
|
|
1135
|
+
response = await requestVtecx(method, url, req);
|
|
1136
|
+
}
|
|
1137
|
+
catch (e) {
|
|
1138
|
+
throw newFetchError(e, true);
|
|
1139
|
+
}
|
|
936
1140
|
//console.log(`[vtecxnext getSessionEntry] response. status=${response.status}`)
|
|
937
1141
|
// vte.cxからのset-cookieを転記
|
|
938
1142
|
setCookie(response, res);
|
|
@@ -956,7 +1160,13 @@ const getSessionString = async (req, res, name) => {
|
|
|
956
1160
|
// vte.cxへリクエスト
|
|
957
1161
|
const method = 'GET';
|
|
958
1162
|
const url = `/p/?_sessionstring=${name}`;
|
|
959
|
-
|
|
1163
|
+
let response;
|
|
1164
|
+
try {
|
|
1165
|
+
response = await requestVtecx(method, url, req);
|
|
1166
|
+
}
|
|
1167
|
+
catch (e) {
|
|
1168
|
+
throw newFetchError(e, true);
|
|
1169
|
+
}
|
|
960
1170
|
//console.log(`[vtecxnext getSessionString] response. status=${response.status}`)
|
|
961
1171
|
// vte.cxからのset-cookieを転記
|
|
962
1172
|
setCookie(response, res);
|
|
@@ -986,7 +1196,13 @@ const getSessionLong = async (req, res, name) => {
|
|
|
986
1196
|
// vte.cxへリクエスト
|
|
987
1197
|
const method = 'GET';
|
|
988
1198
|
const url = `/p/?_sessionlong=${name}`;
|
|
989
|
-
|
|
1199
|
+
let response;
|
|
1200
|
+
try {
|
|
1201
|
+
response = await requestVtecx(method, url, req);
|
|
1202
|
+
}
|
|
1203
|
+
catch (e) {
|
|
1204
|
+
throw newFetchError(e, true);
|
|
1205
|
+
}
|
|
990
1206
|
//console.log(`[vtecxnext getSessionLong] response. status=${response.status}`)
|
|
991
1207
|
// vte.cxからのset-cookieを転記
|
|
992
1208
|
setCookie(response, res);
|
|
@@ -1017,7 +1233,13 @@ const pagination = async (req, res, uri, pagerange, targetService) => {
|
|
|
1017
1233
|
// vte.cxへリクエスト
|
|
1018
1234
|
const method = 'GET';
|
|
1019
1235
|
const url = `/p${uri}${uri.includes('?') ? '&' : '?'}_pagination=${pagerange}`;
|
|
1020
|
-
|
|
1236
|
+
let response;
|
|
1237
|
+
try {
|
|
1238
|
+
response = await requestVtecx(method, url, req, null, null, targetService);
|
|
1239
|
+
}
|
|
1240
|
+
catch (e) {
|
|
1241
|
+
throw newFetchError(e, true);
|
|
1242
|
+
}
|
|
1021
1243
|
//console.log(`[vtecxnext pagination] response=${response}`)
|
|
1022
1244
|
// vte.cxからのset-cookieを転記
|
|
1023
1245
|
setCookie(response, res);
|
|
@@ -1043,7 +1265,13 @@ const getPage = async (req, res, uri, num, targetService) => {
|
|
|
1043
1265
|
// vte.cxへリクエスト
|
|
1044
1266
|
const method = 'GET';
|
|
1045
1267
|
const url = `/p${uri}${uri.includes('?') ? '&' : '?'}n=${num}`;
|
|
1046
|
-
|
|
1268
|
+
let response;
|
|
1269
|
+
try {
|
|
1270
|
+
response = await requestVtecx(method, url, req, null, null, targetService);
|
|
1271
|
+
}
|
|
1272
|
+
catch (e) {
|
|
1273
|
+
throw newFetchError(e, true);
|
|
1274
|
+
}
|
|
1047
1275
|
//console.log(`[vtecxnext getPage] response=${response}`)
|
|
1048
1276
|
// vte.cxからのset-cookieを転記
|
|
1049
1277
|
setCookie(response, res);
|
|
@@ -1076,7 +1304,13 @@ const postBQ = async (req, res, feed, async, tablenames) => {
|
|
|
1076
1304
|
// vte.cxへリクエスト
|
|
1077
1305
|
const method = 'POST';
|
|
1078
1306
|
const url = `/p/?_bq${async ? '&_async' : ''}`;
|
|
1079
|
-
|
|
1307
|
+
let response;
|
|
1308
|
+
try {
|
|
1309
|
+
response = await requestVtecx(method, url, req, JSON.stringify(reqFeed));
|
|
1310
|
+
}
|
|
1311
|
+
catch (e) {
|
|
1312
|
+
throw newFetchError(e, true);
|
|
1313
|
+
}
|
|
1080
1314
|
//console.log(`[vtecxnext postBQ] response. status=${response.status}`)
|
|
1081
1315
|
// vte.cxからのset-cookieを転記
|
|
1082
1316
|
setCookie(response, res);
|
|
@@ -1117,7 +1351,13 @@ const deleteBQ = async (req, res, keys, async, tablenames) => {
|
|
|
1117
1351
|
// vte.cxへリクエスト
|
|
1118
1352
|
const method = 'DELETE';
|
|
1119
1353
|
const url = `/p/?_bq${async ? '&_async' : ''}`;
|
|
1120
|
-
|
|
1354
|
+
let response;
|
|
1355
|
+
try {
|
|
1356
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
1357
|
+
}
|
|
1358
|
+
catch (e) {
|
|
1359
|
+
throw newFetchError(e, true);
|
|
1360
|
+
}
|
|
1121
1361
|
//console.log(`[vtecxnext deleteBQ] response. status=${response.status}`)
|
|
1122
1362
|
// vte.cxからのset-cookieを転記
|
|
1123
1363
|
setCookie(response, res);
|
|
@@ -1144,7 +1384,13 @@ const getBQ = async (req, res, sql, values, parent) => {
|
|
|
1144
1384
|
// vte.cxへリクエスト
|
|
1145
1385
|
const method = 'PUT';
|
|
1146
1386
|
const url = `/p/?_querybq`;
|
|
1147
|
-
|
|
1387
|
+
let response;
|
|
1388
|
+
try {
|
|
1389
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
1390
|
+
}
|
|
1391
|
+
catch (e) {
|
|
1392
|
+
throw newFetchError(e, true);
|
|
1393
|
+
}
|
|
1148
1394
|
//console.log(`[vtecxnext getBQ] response. status=${response.status}`)
|
|
1149
1395
|
// vte.cxからのset-cookieを転記
|
|
1150
1396
|
setCookie(response, res);
|
|
@@ -1175,7 +1421,13 @@ const getBQCsv = async (req, res, sql, values, filename, parent) => {
|
|
|
1175
1421
|
// vte.cxへリクエスト
|
|
1176
1422
|
const method = 'PUT';
|
|
1177
1423
|
const url = `/p/?_querybq&_csv${filename ? '=' + filename : ''}`;
|
|
1178
|
-
|
|
1424
|
+
let response;
|
|
1425
|
+
try {
|
|
1426
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
1427
|
+
}
|
|
1428
|
+
catch (e) {
|
|
1429
|
+
throw newFetchError(e, true);
|
|
1430
|
+
}
|
|
1179
1431
|
//console.log(`[vtecxnext getBQCsv] response. status=${response.status}`)
|
|
1180
1432
|
// vte.cxからのset-cookieを転記
|
|
1181
1433
|
setCookie(response, res);
|
|
@@ -1207,7 +1459,13 @@ const toPdf = async (req, res, htmlTemplate, filename) => {
|
|
|
1207
1459
|
// vte.cxへリクエスト
|
|
1208
1460
|
const method = 'PUT';
|
|
1209
1461
|
const url = `/p/?_pdf${filename ? '=' + filename : ''}`;
|
|
1210
|
-
|
|
1462
|
+
let response;
|
|
1463
|
+
try {
|
|
1464
|
+
response = await requestVtecx(method, url, req, htmlTemplate);
|
|
1465
|
+
}
|
|
1466
|
+
catch (e) {
|
|
1467
|
+
throw newFetchError(e, true);
|
|
1468
|
+
}
|
|
1211
1469
|
//console.log(`[vtecxnext toPdf] response. status=${response.status}`)
|
|
1212
1470
|
// vte.cxからのset-cookieを転記
|
|
1213
1471
|
setCookie(response, res);
|
|
@@ -1238,7 +1496,13 @@ const putSignature = async (req, res, uri, revision) => {
|
|
|
1238
1496
|
// vte.cxへリクエスト
|
|
1239
1497
|
const method = 'PUT';
|
|
1240
1498
|
const url = `/p${uri}?_signature${revision ? '&r=' + revision : ''}`;
|
|
1241
|
-
|
|
1499
|
+
let response;
|
|
1500
|
+
try {
|
|
1501
|
+
response = await requestVtecx(method, url, req);
|
|
1502
|
+
}
|
|
1503
|
+
catch (e) {
|
|
1504
|
+
throw newFetchError(e, true);
|
|
1505
|
+
}
|
|
1242
1506
|
//console.log(`[vtecxnext putSignature] response=${response}`)
|
|
1243
1507
|
// vte.cxからのset-cookieを転記
|
|
1244
1508
|
setCookie(response, res);
|
|
@@ -1262,7 +1526,13 @@ const putSignatures = async (req, res, feed) => {
|
|
|
1262
1526
|
// vte.cxへリクエスト
|
|
1263
1527
|
const method = 'PUT';
|
|
1264
1528
|
const url = `/p/?_signature`;
|
|
1265
|
-
|
|
1529
|
+
let response;
|
|
1530
|
+
try {
|
|
1531
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
1532
|
+
}
|
|
1533
|
+
catch (e) {
|
|
1534
|
+
throw newFetchError(e, true);
|
|
1535
|
+
}
|
|
1266
1536
|
//console.log(`[vtecxnext putSignatures] response=${response}`)
|
|
1267
1537
|
// vte.cxからのset-cookieを転記
|
|
1268
1538
|
setCookie(response, res);
|
|
@@ -1287,7 +1557,13 @@ const deleteSignature = async (req, res, uri, revision) => {
|
|
|
1287
1557
|
// vte.cxへリクエスト
|
|
1288
1558
|
const method = 'DELETE';
|
|
1289
1559
|
const url = `/p${uri}?_signature${revision ? '&r=' + revision : ''}`;
|
|
1290
|
-
|
|
1560
|
+
let response;
|
|
1561
|
+
try {
|
|
1562
|
+
response = await requestVtecx(method, url, req);
|
|
1563
|
+
}
|
|
1564
|
+
catch (e) {
|
|
1565
|
+
throw newFetchError(e, true);
|
|
1566
|
+
}
|
|
1291
1567
|
//console.log(`[vtecxnext deleteSignature] response=${response}`)
|
|
1292
1568
|
// vte.cxからのset-cookieを転記
|
|
1293
1569
|
setCookie(response, res);
|
|
@@ -1310,7 +1586,13 @@ const checkSignature = async (req, res, uri) => {
|
|
|
1310
1586
|
// vte.cxへリクエスト
|
|
1311
1587
|
const method = 'GET';
|
|
1312
1588
|
const url = `/p${uri}?_signature`;
|
|
1313
|
-
|
|
1589
|
+
let response;
|
|
1590
|
+
try {
|
|
1591
|
+
response = await requestVtecx(method, url, req);
|
|
1592
|
+
}
|
|
1593
|
+
catch (e) {
|
|
1594
|
+
throw newFetchError(e, true);
|
|
1595
|
+
}
|
|
1314
1596
|
//console.log(`[vtecxnext checkSignature] response=${response}`)
|
|
1315
1597
|
// vte.cxからのset-cookieを転記
|
|
1316
1598
|
setCookie(response, res);
|
|
@@ -1365,7 +1647,13 @@ const sendMail = async (req, res, entry, to, cc, bcc, attachments) => {
|
|
|
1365
1647
|
// vte.cxへリクエスト
|
|
1366
1648
|
const method = 'POST';
|
|
1367
1649
|
const url = `/p/?_sendmail`;
|
|
1368
|
-
|
|
1650
|
+
let response;
|
|
1651
|
+
try {
|
|
1652
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
1653
|
+
}
|
|
1654
|
+
catch (e) {
|
|
1655
|
+
throw newFetchError(e, true);
|
|
1656
|
+
}
|
|
1369
1657
|
//console.log(`[vtecxnext sendMail] response. status=${response.status}`)
|
|
1370
1658
|
// vte.cxからのset-cookieを転記
|
|
1371
1659
|
setCookie(response, res);
|
|
@@ -1429,7 +1717,13 @@ const pushNotification = async (req, res, message, to, title, subtitle, imageUrl
|
|
|
1429
1717
|
// vte.cxへリクエスト
|
|
1430
1718
|
const method = 'POST';
|
|
1431
1719
|
const url = `/p/?_pushnotification`;
|
|
1432
|
-
|
|
1720
|
+
let response;
|
|
1721
|
+
try {
|
|
1722
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
1723
|
+
}
|
|
1724
|
+
catch (e) {
|
|
1725
|
+
throw newFetchError(e, true);
|
|
1726
|
+
}
|
|
1433
1727
|
//console.log(`[vtecxnext pushNotification] response. status=${response.status}`)
|
|
1434
1728
|
// vte.cxからのset-cookieを転記
|
|
1435
1729
|
setCookie(response, res);
|
|
@@ -1452,7 +1746,13 @@ const setMessageQueueStatus = async (req, res, flag, channel) => {
|
|
|
1452
1746
|
// vte.cxへリクエスト
|
|
1453
1747
|
const method = 'PUT';
|
|
1454
1748
|
const url = `/p${channel}?_mqstatus=${flag ? 'true' : 'false'}`;
|
|
1455
|
-
|
|
1749
|
+
let response;
|
|
1750
|
+
try {
|
|
1751
|
+
response = await requestVtecx(method, url, req);
|
|
1752
|
+
}
|
|
1753
|
+
catch (e) {
|
|
1754
|
+
throw newFetchError(e, true);
|
|
1755
|
+
}
|
|
1456
1756
|
//console.log(`[vtecxnext setMessageQueueStatus] response=${response}`)
|
|
1457
1757
|
// vte.cxからのset-cookieを転記
|
|
1458
1758
|
setCookie(response, res);
|
|
@@ -1477,7 +1777,13 @@ const setMessageQueue = async (req, res, feed, channel) => {
|
|
|
1477
1777
|
// vte.cxへリクエスト
|
|
1478
1778
|
const method = 'POST';
|
|
1479
1779
|
const url = `/p${channel}?_mq`;
|
|
1480
|
-
|
|
1780
|
+
let response;
|
|
1781
|
+
try {
|
|
1782
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
1783
|
+
}
|
|
1784
|
+
catch (e) {
|
|
1785
|
+
throw newFetchError(e, true);
|
|
1786
|
+
}
|
|
1481
1787
|
//console.log(`[vtecxnext setMessageQueue] response. status=${response.status}`)
|
|
1482
1788
|
// vte.cxからのset-cookieを転記
|
|
1483
1789
|
setCookie(response, res);
|
|
@@ -1500,7 +1806,13 @@ const getMessageQueue = async (req, res, channel) => {
|
|
|
1500
1806
|
// vte.cxへリクエスト
|
|
1501
1807
|
const method = 'GET';
|
|
1502
1808
|
const url = `/p${channel}?_mq`;
|
|
1503
|
-
|
|
1809
|
+
let response;
|
|
1810
|
+
try {
|
|
1811
|
+
response = await requestVtecx(method, url, req);
|
|
1812
|
+
}
|
|
1813
|
+
catch (e) {
|
|
1814
|
+
throw newFetchError(e, true);
|
|
1815
|
+
}
|
|
1504
1816
|
//console.log(`[vtecxnext getMessageQueue] response. status=${response.status}`)
|
|
1505
1817
|
// vte.cxからのset-cookieを転記
|
|
1506
1818
|
setCookie(response, res);
|
|
@@ -1526,7 +1838,13 @@ const joinGroup = async (req, res, group, selfid) => {
|
|
|
1526
1838
|
// vte.cxへリクエスト
|
|
1527
1839
|
const method = 'PUT';
|
|
1528
1840
|
const url = `/p${group}?_joingroup&_selfid=${selfid}`;
|
|
1529
|
-
|
|
1841
|
+
let response;
|
|
1842
|
+
try {
|
|
1843
|
+
response = await requestVtecx(method, url, req);
|
|
1844
|
+
}
|
|
1845
|
+
catch (e) {
|
|
1846
|
+
throw newFetchError(e, true);
|
|
1847
|
+
}
|
|
1530
1848
|
//console.log(`[vtecxnext joinGroup] response. status=${response.status}`)
|
|
1531
1849
|
// vte.cxからのset-cookieを転記
|
|
1532
1850
|
setCookie(response, res);
|
|
@@ -1550,7 +1868,13 @@ const leaveGroup = async (req, res, group) => {
|
|
|
1550
1868
|
// vte.cxへリクエスト
|
|
1551
1869
|
const method = 'DELETE';
|
|
1552
1870
|
const url = `/p${group}?_leavegroup`;
|
|
1553
|
-
|
|
1871
|
+
let response;
|
|
1872
|
+
try {
|
|
1873
|
+
response = await requestVtecx(method, url, req);
|
|
1874
|
+
}
|
|
1875
|
+
catch (e) {
|
|
1876
|
+
throw newFetchError(e, true);
|
|
1877
|
+
}
|
|
1554
1878
|
//console.log(`[vtecxnext leaveGroup] response. status=${response.status}`)
|
|
1555
1879
|
// vte.cxからのset-cookieを転記
|
|
1556
1880
|
setCookie(response, res);
|
|
@@ -1575,7 +1899,13 @@ const noGroupMember = async (req, res, uri) => {
|
|
|
1575
1899
|
// vte.cxへリクエスト
|
|
1576
1900
|
const method = 'GET';
|
|
1577
1901
|
const url = `/d${uri}?_no_group_member`;
|
|
1578
|
-
|
|
1902
|
+
let response;
|
|
1903
|
+
try {
|
|
1904
|
+
response = await requestVtecx(method, url, req);
|
|
1905
|
+
}
|
|
1906
|
+
catch (e) {
|
|
1907
|
+
throw newFetchError(e, true);
|
|
1908
|
+
}
|
|
1579
1909
|
//console.log(`[vtecxnext noGroupMember] response=${response}`)
|
|
1580
1910
|
// vte.cxからのset-cookieを転記
|
|
1581
1911
|
setCookie(response, res);
|
|
@@ -1585,6 +1915,75 @@ const noGroupMember = async (req, res, uri) => {
|
|
|
1585
1915
|
return await getJson(response);
|
|
1586
1916
|
};
|
|
1587
1917
|
exports.noGroupMember = noGroupMember;
|
|
1918
|
+
/**
|
|
1919
|
+
* Get groups
|
|
1920
|
+
* @param req request (for authentication)
|
|
1921
|
+
* @param res response (for authentication)
|
|
1922
|
+
* @param uri group key
|
|
1923
|
+
* @return feed (entry array)
|
|
1924
|
+
*/
|
|
1925
|
+
const getGroups = async (req, res) => {
|
|
1926
|
+
//console.log('[vtecxnext getGroups] start.')
|
|
1927
|
+
// vte.cxへリクエスト
|
|
1928
|
+
const method = 'GET';
|
|
1929
|
+
const url = `/d/?_group`;
|
|
1930
|
+
let response;
|
|
1931
|
+
try {
|
|
1932
|
+
response = await requestVtecx(method, url, req);
|
|
1933
|
+
}
|
|
1934
|
+
catch (e) {
|
|
1935
|
+
throw newFetchError(e, true);
|
|
1936
|
+
}
|
|
1937
|
+
//console.log(`[vtecxnext getGroups] response=${response}`)
|
|
1938
|
+
// vte.cxからのset-cookieを転記
|
|
1939
|
+
setCookie(response, res);
|
|
1940
|
+
// レスポンスのエラーチェック
|
|
1941
|
+
await checkVtecxResponse(response);
|
|
1942
|
+
// 戻り値
|
|
1943
|
+
return await getJson(response);
|
|
1944
|
+
};
|
|
1945
|
+
exports.getGroups = getGroups;
|
|
1946
|
+
/**
|
|
1947
|
+
* whether you are in the group
|
|
1948
|
+
* @param req request (for authentication)
|
|
1949
|
+
* @param res response (for authentication)
|
|
1950
|
+
* @param uri group key
|
|
1951
|
+
* @return true/false
|
|
1952
|
+
*/
|
|
1953
|
+
const isGroupMember = async (req, res, uri) => {
|
|
1954
|
+
//console.log('[vtecxnext noGroupMember] start.')
|
|
1955
|
+
// キー入力値チェック
|
|
1956
|
+
checkUri(uri);
|
|
1957
|
+
// vte.cxへリクエスト
|
|
1958
|
+
const method = 'GET';
|
|
1959
|
+
const url = `/d${uri}?_is_group_member`;
|
|
1960
|
+
let response;
|
|
1961
|
+
try {
|
|
1962
|
+
response = await requestVtecx(method, url, req);
|
|
1963
|
+
}
|
|
1964
|
+
catch (e) {
|
|
1965
|
+
throw newFetchError(e, true);
|
|
1966
|
+
}
|
|
1967
|
+
//console.log(`[vtecxnext noGroupMember] response=${response}`)
|
|
1968
|
+
// vte.cxからのset-cookieを転記
|
|
1969
|
+
setCookie(response, res);
|
|
1970
|
+
// レスポンスのエラーチェック
|
|
1971
|
+
await checkVtecxResponse(response);
|
|
1972
|
+
// 戻り値
|
|
1973
|
+
const data = await getJson(response);
|
|
1974
|
+
return data?.feed?.title === 'true' ? true : false;
|
|
1975
|
+
};
|
|
1976
|
+
exports.isGroupMember = isGroupMember;
|
|
1977
|
+
/**
|
|
1978
|
+
* whether you are in the admin group
|
|
1979
|
+
* @param req request (for authentication)
|
|
1980
|
+
* @param res response (for authentication)
|
|
1981
|
+
* @return true/false
|
|
1982
|
+
*/
|
|
1983
|
+
const isAdmin = async (req, res) => {
|
|
1984
|
+
return await (0, exports.isGroupMember)(req, res, '/_group/$admin');
|
|
1985
|
+
};
|
|
1986
|
+
exports.isAdmin = isAdmin;
|
|
1588
1987
|
/**
|
|
1589
1988
|
* add user
|
|
1590
1989
|
* @param req request (for authentication)
|
|
@@ -1601,7 +2000,13 @@ const adduser = async (req, res, feed, reCaptchaToken) => {
|
|
|
1601
2000
|
const method = 'POST';
|
|
1602
2001
|
const param = reCaptchaToken ? `&g-recaptcha-token=${reCaptchaToken}` : '';
|
|
1603
2002
|
const url = `/d/?_adduser${param}`;
|
|
1604
|
-
|
|
2003
|
+
let response;
|
|
2004
|
+
try {
|
|
2005
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2006
|
+
}
|
|
2007
|
+
catch (e) {
|
|
2008
|
+
throw newFetchError(e, true);
|
|
2009
|
+
}
|
|
1605
2010
|
//console.log(`[vtecxnext adduser] response. status=${response.status}`)
|
|
1606
2011
|
// vte.cxからのset-cookieを転記
|
|
1607
2012
|
setCookie(response, res);
|
|
@@ -1625,7 +2030,13 @@ const adduserByAdmin = async (req, res, feed) => {
|
|
|
1625
2030
|
// vte.cxへリクエスト
|
|
1626
2031
|
const method = 'POST';
|
|
1627
2032
|
const url = `/d/?_adduserByAdmin`;
|
|
1628
|
-
|
|
2033
|
+
let response;
|
|
2034
|
+
try {
|
|
2035
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2036
|
+
}
|
|
2037
|
+
catch (e) {
|
|
2038
|
+
throw newFetchError(e, true);
|
|
2039
|
+
}
|
|
1629
2040
|
//console.log(`[vtecxnext adduserByAdmin] response. status=${response.status}`)
|
|
1630
2041
|
// vte.cxからのset-cookieを転記
|
|
1631
2042
|
setCookie(response, res);
|
|
@@ -1650,7 +2061,13 @@ const passreset = async (req, res, feed, reCaptchaToken) => {
|
|
|
1650
2061
|
const method = 'POST';
|
|
1651
2062
|
const param = reCaptchaToken ? `&g-recaptcha-token=${reCaptchaToken}` : '';
|
|
1652
2063
|
const url = `/d/?_passreset${param}`;
|
|
1653
|
-
|
|
2064
|
+
let response;
|
|
2065
|
+
try {
|
|
2066
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2067
|
+
}
|
|
2068
|
+
catch (e) {
|
|
2069
|
+
throw newFetchError(e, true);
|
|
2070
|
+
}
|
|
1654
2071
|
//console.log(`[vtecxnext passreset] response. status=${response.status}`)
|
|
1655
2072
|
// vte.cxからのset-cookieを転記
|
|
1656
2073
|
setCookie(response, res);
|
|
@@ -1673,7 +2090,13 @@ const changepass = async (req, res, feed) => {
|
|
|
1673
2090
|
// vte.cxへリクエスト
|
|
1674
2091
|
const method = 'PUT';
|
|
1675
2092
|
const url = `/d/?_changephash`;
|
|
1676
|
-
|
|
2093
|
+
let response;
|
|
2094
|
+
try {
|
|
2095
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2096
|
+
}
|
|
2097
|
+
catch (e) {
|
|
2098
|
+
throw newFetchError(e, true);
|
|
2099
|
+
}
|
|
1677
2100
|
//console.log(`[vtecxnext changepass] response. status=${response.status}`)
|
|
1678
2101
|
// vte.cxからのset-cookieを転記
|
|
1679
2102
|
setCookie(response, res);
|
|
@@ -1696,7 +2119,13 @@ const changepassByAdmin = async (req, res, feed) => {
|
|
|
1696
2119
|
// vte.cxへリクエスト
|
|
1697
2120
|
const method = 'PUT';
|
|
1698
2121
|
const url = `/d/?_changephashByAdmin`;
|
|
1699
|
-
|
|
2122
|
+
let response;
|
|
2123
|
+
try {
|
|
2124
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2125
|
+
}
|
|
2126
|
+
catch (e) {
|
|
2127
|
+
throw newFetchError(e, true);
|
|
2128
|
+
}
|
|
1700
2129
|
//console.log(`[vtecxnext changepassByAdmin] response. status=${response.status}`)
|
|
1701
2130
|
// vte.cxからのset-cookieを転記
|
|
1702
2131
|
setCookie(response, res);
|
|
@@ -1719,7 +2148,13 @@ const changeaccount = async (req, res, feed) => {
|
|
|
1719
2148
|
// vte.cxへリクエスト
|
|
1720
2149
|
const method = 'PUT';
|
|
1721
2150
|
const url = `/d/?_changeaccount`;
|
|
1722
|
-
|
|
2151
|
+
let response;
|
|
2152
|
+
try {
|
|
2153
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2154
|
+
}
|
|
2155
|
+
catch (e) {
|
|
2156
|
+
throw newFetchError(e, true);
|
|
2157
|
+
}
|
|
1723
2158
|
//console.log(`[vtecxnext changeaccount] response. status=${response.status}`)
|
|
1724
2159
|
// vte.cxからのset-cookieを転記
|
|
1725
2160
|
setCookie(response, res);
|
|
@@ -1742,7 +2177,13 @@ const changeaccount_verify = async (req, res, verifyCode) => {
|
|
|
1742
2177
|
// vte.cxへリクエスト
|
|
1743
2178
|
const method = 'PUT';
|
|
1744
2179
|
const url = `/d/?_changeaccount_verify=${verifyCode}`;
|
|
1745
|
-
|
|
2180
|
+
let response;
|
|
2181
|
+
try {
|
|
2182
|
+
response = await requestVtecx(method, url, req);
|
|
2183
|
+
}
|
|
2184
|
+
catch (e) {
|
|
2185
|
+
throw newFetchError(e, true);
|
|
2186
|
+
}
|
|
1746
2187
|
//console.log(`[vtecxnext changeaccount_verify] response=${response}`)
|
|
1747
2188
|
// vte.cxからのset-cookieを転記
|
|
1748
2189
|
setCookie(response, res);
|
|
@@ -1764,7 +2205,13 @@ const userstatus = async (req, res, account) => {
|
|
|
1764
2205
|
// vte.cxへリクエスト
|
|
1765
2206
|
const method = 'GET';
|
|
1766
2207
|
const url = `/d/?_userstatus${account ? '=' + account : ''}`;
|
|
1767
|
-
|
|
2208
|
+
let response;
|
|
2209
|
+
try {
|
|
2210
|
+
response = await requestVtecx(method, url, req);
|
|
2211
|
+
}
|
|
2212
|
+
catch (e) {
|
|
2213
|
+
throw newFetchError(e, true);
|
|
2214
|
+
}
|
|
1768
2215
|
//console.log(`[vtecxnext userstatus] response=${response}`)
|
|
1769
2216
|
// vte.cxからのset-cookieを転記
|
|
1770
2217
|
setCookie(response, res);
|
|
@@ -1788,7 +2235,13 @@ const revokeuser = async (req, res, account) => {
|
|
|
1788
2235
|
// vte.cxへリクエスト
|
|
1789
2236
|
const method = 'PUT';
|
|
1790
2237
|
const url = `/d/?_revokeuser=${account}`;
|
|
1791
|
-
|
|
2238
|
+
let response;
|
|
2239
|
+
try {
|
|
2240
|
+
response = await requestVtecx(method, url, req);
|
|
2241
|
+
}
|
|
2242
|
+
catch (e) {
|
|
2243
|
+
throw newFetchError(e, true);
|
|
2244
|
+
}
|
|
1792
2245
|
//console.log(`[vtecxnext revokeuser] response=${response}`)
|
|
1793
2246
|
// vte.cxからのset-cookieを転記
|
|
1794
2247
|
setCookie(response, res);
|
|
@@ -1812,7 +2265,13 @@ const revokeusers = async (req, res, feed) => {
|
|
|
1812
2265
|
// vte.cxへリクエスト
|
|
1813
2266
|
const method = 'PUT';
|
|
1814
2267
|
const url = `/d/?_revokeuser`;
|
|
1815
|
-
|
|
2268
|
+
let response;
|
|
2269
|
+
try {
|
|
2270
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2271
|
+
}
|
|
2272
|
+
catch (e) {
|
|
2273
|
+
throw newFetchError(e, true);
|
|
2274
|
+
}
|
|
1816
2275
|
//console.log(`[vtecxnext revokeusers] response. status=${response.status}`)
|
|
1817
2276
|
// vte.cxからのset-cookieを転記
|
|
1818
2277
|
setCookie(response, res);
|
|
@@ -1835,7 +2294,13 @@ const activateuser = async (req, res, account) => {
|
|
|
1835
2294
|
// vte.cxへリクエスト
|
|
1836
2295
|
const method = 'PUT';
|
|
1837
2296
|
const url = `/d/?_activateuser=${account}`;
|
|
1838
|
-
|
|
2297
|
+
let response;
|
|
2298
|
+
try {
|
|
2299
|
+
response = await requestVtecx(method, url, req);
|
|
2300
|
+
}
|
|
2301
|
+
catch (e) {
|
|
2302
|
+
throw newFetchError(e, true);
|
|
2303
|
+
}
|
|
1839
2304
|
//console.log(`[vtecxnext activateuser] response=${response}`)
|
|
1840
2305
|
// vte.cxからのset-cookieを転記
|
|
1841
2306
|
setCookie(response, res);
|
|
@@ -1859,7 +2324,13 @@ const activateusers = async (req, res, feed) => {
|
|
|
1859
2324
|
// vte.cxへリクエスト
|
|
1860
2325
|
const method = 'PUT';
|
|
1861
2326
|
const url = `/d/?_activateuser`;
|
|
1862
|
-
|
|
2327
|
+
let response;
|
|
2328
|
+
try {
|
|
2329
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2330
|
+
}
|
|
2331
|
+
catch (e) {
|
|
2332
|
+
throw newFetchError(e, true);
|
|
2333
|
+
}
|
|
1863
2334
|
//console.log(`[vtecxnext activateusers] response. status=${response.status}`)
|
|
1864
2335
|
// vte.cxからのset-cookieを転記
|
|
1865
2336
|
setCookie(response, res);
|
|
@@ -1880,7 +2351,13 @@ const canceluser = async (req, res) => {
|
|
|
1880
2351
|
// vte.cxへリクエスト
|
|
1881
2352
|
const method = 'DELETE';
|
|
1882
2353
|
const url = `/d/?_canceluser`;
|
|
1883
|
-
|
|
2354
|
+
let response;
|
|
2355
|
+
try {
|
|
2356
|
+
response = await requestVtecx(method, url, req);
|
|
2357
|
+
}
|
|
2358
|
+
catch (e) {
|
|
2359
|
+
throw newFetchError(e, true);
|
|
2360
|
+
}
|
|
1884
2361
|
//console.log(`[vtecxnext canceluser] response=${response}`)
|
|
1885
2362
|
// vte.cxからのset-cookieを転記
|
|
1886
2363
|
setCookie(response, res);
|
|
@@ -1904,7 +2381,13 @@ const deleteuser = async (req, res, account) => {
|
|
|
1904
2381
|
// vte.cxへリクエスト
|
|
1905
2382
|
const method = 'DELETE';
|
|
1906
2383
|
const url = `/d/?_deleteuser=${account}`;
|
|
1907
|
-
|
|
2384
|
+
let response;
|
|
2385
|
+
try {
|
|
2386
|
+
response = await requestVtecx(method, url, req);
|
|
2387
|
+
}
|
|
2388
|
+
catch (e) {
|
|
2389
|
+
throw newFetchError(e, true);
|
|
2390
|
+
}
|
|
1908
2391
|
//console.log(`[vtecxnext deleteuser] response=${response}`)
|
|
1909
2392
|
// vte.cxからのset-cookieを転記
|
|
1910
2393
|
setCookie(response, res);
|
|
@@ -1928,7 +2411,13 @@ const deleteusers = async (req, res, feed) => {
|
|
|
1928
2411
|
// vte.cxへリクエスト
|
|
1929
2412
|
const method = 'DELETE';
|
|
1930
2413
|
const url = `/d/?_deleteuser`;
|
|
1931
|
-
|
|
2414
|
+
let response;
|
|
2415
|
+
try {
|
|
2416
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2417
|
+
}
|
|
2418
|
+
catch (e) {
|
|
2419
|
+
throw newFetchError(e, true);
|
|
2420
|
+
}
|
|
1932
2421
|
//console.log(`[vtecxnext deleteusers] response. status=${response.status}`)
|
|
1933
2422
|
// vte.cxからのset-cookieを転記
|
|
1934
2423
|
setCookie(response, res);
|
|
@@ -2044,7 +2533,13 @@ const putcontent = async (req, res, uri) => {
|
|
|
2044
2533
|
//const headers = {'Content-Type' : req.headers['content-type'], 'Content-Length' : req.headers['content-length']}
|
|
2045
2534
|
const headers = { 'Content-Type': req.headers['content-type'] };
|
|
2046
2535
|
const buf = await (0, exports.buffer)(req);
|
|
2047
|
-
|
|
2536
|
+
let response;
|
|
2537
|
+
try {
|
|
2538
|
+
response = await requestVtecx(method, url, req, buf, headers);
|
|
2539
|
+
}
|
|
2540
|
+
catch (e) {
|
|
2541
|
+
throw newFetchError(e, true);
|
|
2542
|
+
}
|
|
2048
2543
|
//console.log(`[vtecxnext putcontent] response. status=${response.status}`)
|
|
2049
2544
|
// vte.cxからのset-cookieを転記
|
|
2050
2545
|
setCookie(response, res);
|
|
@@ -2067,7 +2562,13 @@ const deletecontent = async (req, res, uri) => {
|
|
|
2067
2562
|
// vte.cxへリクエスト
|
|
2068
2563
|
const method = 'DELETE';
|
|
2069
2564
|
const url = `/p${uri}?_content`;
|
|
2070
|
-
|
|
2565
|
+
let response;
|
|
2566
|
+
try {
|
|
2567
|
+
response = await requestVtecx(method, url, req);
|
|
2568
|
+
}
|
|
2569
|
+
catch (e) {
|
|
2570
|
+
throw newFetchError(e, true);
|
|
2571
|
+
}
|
|
2071
2572
|
//console.log(`[vtecxnext deletecontent] response. status=${response.status}`)
|
|
2072
2573
|
// vte.cxからのset-cookieを転記
|
|
2073
2574
|
setCookie(response, res);
|
|
@@ -2091,7 +2592,13 @@ const getcontent = async (req, res, uri) => {
|
|
|
2091
2592
|
// vte.cxへリクエスト
|
|
2092
2593
|
const method = 'GET';
|
|
2093
2594
|
const url = `/p${uri}?_content`;
|
|
2094
|
-
|
|
2595
|
+
let response;
|
|
2596
|
+
try {
|
|
2597
|
+
response = await requestVtecx(method, url, req);
|
|
2598
|
+
}
|
|
2599
|
+
catch (e) {
|
|
2600
|
+
throw newFetchError(e, true);
|
|
2601
|
+
}
|
|
2095
2602
|
//console.log(`[vtecxnext getcontent] response. status=${response.status}`)
|
|
2096
2603
|
// vte.cxからのset-cookieを転記
|
|
2097
2604
|
setCookie(response, res);
|
|
@@ -2127,7 +2634,13 @@ const addacl = async (req, res, feed) => {
|
|
|
2127
2634
|
// vte.cxへリクエスト
|
|
2128
2635
|
const method = 'PUT';
|
|
2129
2636
|
const url = `/d/?_addacl`;
|
|
2130
|
-
|
|
2637
|
+
let response;
|
|
2638
|
+
try {
|
|
2639
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2640
|
+
}
|
|
2641
|
+
catch (e) {
|
|
2642
|
+
throw newFetchError(e, true);
|
|
2643
|
+
}
|
|
2131
2644
|
//console.log(`[vtecxnext addacl] response=${response}`)
|
|
2132
2645
|
// vte.cxからのset-cookieを転記
|
|
2133
2646
|
setCookie(response, res);
|
|
@@ -2151,7 +2664,13 @@ const removeacl = async (req, res, feed) => {
|
|
|
2151
2664
|
// vte.cxへリクエスト
|
|
2152
2665
|
const method = 'PUT';
|
|
2153
2666
|
const url = `/d/?_removeacl`;
|
|
2154
|
-
|
|
2667
|
+
let response;
|
|
2668
|
+
try {
|
|
2669
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2670
|
+
}
|
|
2671
|
+
catch (e) {
|
|
2672
|
+
throw newFetchError(e, true);
|
|
2673
|
+
}
|
|
2155
2674
|
//console.log(`[vtecxnext removeacl] response=${response}`)
|
|
2156
2675
|
// vte.cxからのset-cookieを転記
|
|
2157
2676
|
setCookie(response, res);
|
|
@@ -2175,7 +2694,13 @@ const addalias = async (req, res, feed) => {
|
|
|
2175
2694
|
// vte.cxへリクエスト
|
|
2176
2695
|
const method = 'PUT';
|
|
2177
2696
|
const url = `/d/?_addalias`;
|
|
2178
|
-
|
|
2697
|
+
let response;
|
|
2698
|
+
try {
|
|
2699
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2700
|
+
}
|
|
2701
|
+
catch (e) {
|
|
2702
|
+
throw newFetchError(e, true);
|
|
2703
|
+
}
|
|
2179
2704
|
//console.log(`[vtecxnext addalias] response=${response}`)
|
|
2180
2705
|
// vte.cxからのset-cookieを転記
|
|
2181
2706
|
setCookie(response, res);
|
|
@@ -2199,7 +2724,13 @@ const removealias = async (req, res, feed) => {
|
|
|
2199
2724
|
// vte.cxへリクエスト
|
|
2200
2725
|
const method = 'PUT';
|
|
2201
2726
|
const url = `/d/?_removealias`;
|
|
2202
|
-
|
|
2727
|
+
let response;
|
|
2728
|
+
try {
|
|
2729
|
+
response = await requestVtecx(method, url, req, JSON.stringify(feed));
|
|
2730
|
+
}
|
|
2731
|
+
catch (e) {
|
|
2732
|
+
throw newFetchError(e, true);
|
|
2733
|
+
}
|
|
2203
2734
|
//console.log(`[vtecxnext removealias] response=${response}`)
|
|
2204
2735
|
// vte.cxからのset-cookieを転記
|
|
2205
2736
|
setCookie(response, res);
|
|
@@ -2263,6 +2794,20 @@ class VtecxNextError extends Error {
|
|
|
2263
2794
|
}
|
|
2264
2795
|
}
|
|
2265
2796
|
exports.VtecxNextError = VtecxNextError;
|
|
2797
|
+
/**
|
|
2798
|
+
* Fetch Error
|
|
2799
|
+
*/
|
|
2800
|
+
class FetchError extends VtecxNextError {
|
|
2801
|
+
//url:string
|
|
2802
|
+
//requestInit:RequestInit
|
|
2803
|
+
constructor(message) {
|
|
2804
|
+
super(500, message);
|
|
2805
|
+
this.name = 'FetchError';
|
|
2806
|
+
//this.url = url
|
|
2807
|
+
//this.requestInit = requestInit
|
|
2808
|
+
}
|
|
2809
|
+
}
|
|
2810
|
+
exports.FetchError = FetchError;
|
|
2266
2811
|
//---------------------------------------------
|
|
2267
2812
|
/**
|
|
2268
2813
|
* vte.cxへリクエスト
|
|
@@ -2319,7 +2864,31 @@ const fetchVtecx = async (method, url, headers, body, mode) => {
|
|
|
2319
2864
|
if (mode) {
|
|
2320
2865
|
requestInit['mode'] = mode;
|
|
2321
2866
|
}
|
|
2322
|
-
return
|
|
2867
|
+
return fetchProc(`${VTECX_URL}${url}`, requestInit);
|
|
2868
|
+
};
|
|
2869
|
+
/** vte.cx URL */
|
|
2870
|
+
const VTECX_URL = process.env.VTECX_URL ?? '';
|
|
2871
|
+
const newFetchError = (e, isVtecx) => {
|
|
2872
|
+
let errMsg;
|
|
2873
|
+
if (e instanceof Error) {
|
|
2874
|
+
const errName = isVtecx ? 'VtecxFetchError' : 'FetchError';
|
|
2875
|
+
errMsg = `${errName}: ${e.message}`;
|
|
2876
|
+
}
|
|
2877
|
+
else {
|
|
2878
|
+
errMsg = `Unexpected error.`;
|
|
2879
|
+
}
|
|
2880
|
+
console.log(`[vtecxnext fetchProc] errMsg = ${errMsg}`);
|
|
2881
|
+
return new FetchError(errMsg);
|
|
2882
|
+
};
|
|
2883
|
+
/**
|
|
2884
|
+
* fetch処理。try-catchを行う。
|
|
2885
|
+
* @param url URL
|
|
2886
|
+
* @param requestInit RequestInit
|
|
2887
|
+
* @returns Promise
|
|
2888
|
+
*/
|
|
2889
|
+
const fetchProc = (url, requestInit) => {
|
|
2890
|
+
//console.log(`[vtecxnext fetchProc] url=${url}`)
|
|
2891
|
+
return fetch(url, requestInit);
|
|
2323
2892
|
};
|
|
2324
2893
|
/**
|
|
2325
2894
|
* vte.cxからのset-cookieを、ブラウザへレスポンスする。
|
|
@@ -2383,7 +2952,7 @@ const checkVtecxResponse = async (response) => {
|
|
|
2383
2952
|
if (data && data.feed) {
|
|
2384
2953
|
message = data.feed.title;
|
|
2385
2954
|
}
|
|
2386
|
-
message = message
|
|
2955
|
+
message = message ?? `status=${response.status}`;
|
|
2387
2956
|
throw new VtecxNextError(response.status, message);
|
|
2388
2957
|
}
|
|
2389
2958
|
};
|
|
@@ -2396,7 +2965,7 @@ const checkVtecxResponse = async (response) => {
|
|
|
2396
2965
|
*/
|
|
2397
2966
|
const checkNotNull = (val, name) => {
|
|
2398
2967
|
if (!val) {
|
|
2399
|
-
throw new VtecxNextError(400, `${name
|
|
2968
|
+
throw new VtecxNextError(400, `${name ?? 'Key'} is required.`);
|
|
2400
2969
|
}
|
|
2401
2970
|
};
|
|
2402
2971
|
/**
|
|
@@ -2410,7 +2979,7 @@ const checkNotNull = (val, name) => {
|
|
|
2410
2979
|
const checkUri = (str, name) => {
|
|
2411
2980
|
checkNotNull(str, name);
|
|
2412
2981
|
if (!str.startsWith('/')) {
|
|
2413
|
-
throw new VtecxNextError(400, `${name
|
|
2982
|
+
throw new VtecxNextError(400, `${name ?? 'Key'} must start with a slash.`);
|
|
2414
2983
|
}
|
|
2415
2984
|
};
|
|
2416
2985
|
/**
|
|
@@ -2427,11 +2996,14 @@ const getJson = async (response) => {
|
|
|
2427
2996
|
return await response.json();
|
|
2428
2997
|
}
|
|
2429
2998
|
catch (e) {
|
|
2999
|
+
let errMsg;
|
|
2430
3000
|
if (e instanceof Error) {
|
|
2431
|
-
|
|
2432
|
-
//console.log(`[getJson] Error occured. ${error.name}: ${error.message}`)
|
|
3001
|
+
errMsg = `JsonError: ${e.message}`;
|
|
2433
3002
|
}
|
|
2434
|
-
|
|
3003
|
+
else {
|
|
3004
|
+
errMsg = `JsonError: unexpected error`;
|
|
3005
|
+
}
|
|
3006
|
+
throw new VtecxNextError(500, errMsg);
|
|
2435
3007
|
}
|
|
2436
3008
|
};
|
|
2437
3009
|
/**
|
|
@@ -2519,7 +3091,13 @@ const oauth = async (req, res, provider, oauthUrl) => {
|
|
|
2519
3091
|
// vte.cxへリクエスト (state取得)
|
|
2520
3092
|
const method = 'POST';
|
|
2521
3093
|
const url = `/o/${provider}/create_state`;
|
|
2522
|
-
|
|
3094
|
+
let response;
|
|
3095
|
+
try {
|
|
3096
|
+
response = await requestVtecx(method, url, req);
|
|
3097
|
+
}
|
|
3098
|
+
catch (e) {
|
|
3099
|
+
throw newFetchError(e, true);
|
|
3100
|
+
}
|
|
2523
3101
|
// レスポンスのエラーチェック
|
|
2524
3102
|
await checkVtecxResponse(response);
|
|
2525
3103
|
// 戻り値
|
|
@@ -2557,7 +3135,7 @@ const oauth = async (req, res, provider, oauthUrl) => {
|
|
|
2557
3135
|
const oauthGetAccesstoken = async (req, res, provider, accesstokenUrl) => {
|
|
2558
3136
|
//console.log(`[vtecxnext oauthGetAccesstoken] start. provider=${provider} oauthUrl=${accesstokenUrl}`)
|
|
2559
3137
|
// stateチェック
|
|
2560
|
-
const parseUrl = url_1.default.parse(req.url
|
|
3138
|
+
const parseUrl = url_1.default.parse(req.url ?? '', true);
|
|
2561
3139
|
const state = parseUrl.query.state;
|
|
2562
3140
|
const code = parseUrl.query.code;
|
|
2563
3141
|
if (!state) {
|
|
@@ -2570,7 +3148,13 @@ const oauthGetAccesstoken = async (req, res, provider, accesstokenUrl) => {
|
|
|
2570
3148
|
const vtecxMethod = 'POST';
|
|
2571
3149
|
const vtecxUrl = `/o/${provider}/check_state?state=${state}`;
|
|
2572
3150
|
//console.log(`[vtecxnext oauthGetAccesstoken] vtecxUrl=${vtecxUrl}`)
|
|
2573
|
-
|
|
3151
|
+
let vtecxResponse;
|
|
3152
|
+
try {
|
|
3153
|
+
vtecxResponse = await requestVtecx(vtecxMethod, vtecxUrl, req);
|
|
3154
|
+
}
|
|
3155
|
+
catch (e) {
|
|
3156
|
+
throw newFetchError(e, true);
|
|
3157
|
+
}
|
|
2574
3158
|
//console.log(`[vtecxnext oauthGetAccesstoken] check_state response status=${vtecxResponse.status}`)
|
|
2575
3159
|
// vte.cxからのset-cookieを転記
|
|
2576
3160
|
setCookie(vtecxResponse, res);
|
|
@@ -2608,7 +3192,13 @@ const oauthGetAccesstoken = async (req, res, provider, accesstokenUrl) => {
|
|
|
2608
3192
|
body: accesstokenBody,
|
|
2609
3193
|
method: accesstokenMethod
|
|
2610
3194
|
};
|
|
2611
|
-
|
|
3195
|
+
let accesstokenResponse;
|
|
3196
|
+
try {
|
|
3197
|
+
accesstokenResponse = await fetchProc(accesstokenUrl, requestInit);
|
|
3198
|
+
}
|
|
3199
|
+
catch (e) {
|
|
3200
|
+
throw newFetchError(e, false);
|
|
3201
|
+
}
|
|
2612
3202
|
if (accesstokenResponse.status !== 200) {
|
|
2613
3203
|
const errorInfo = await accesstokenResponse.json();
|
|
2614
3204
|
//console.log(`[vtecxnext oauthGetAccesstoken] Get accesstoken failed. ${JSON.stringify(errorInfo)}`)
|
|
@@ -2646,7 +3236,13 @@ const oauthGetUserinfoLine = async (req, res, oauthInfo) => {
|
|
|
2646
3236
|
headers: headers,
|
|
2647
3237
|
method: method
|
|
2648
3238
|
};
|
|
2649
|
-
|
|
3239
|
+
let response;
|
|
3240
|
+
try {
|
|
3241
|
+
response = await fetchProc(url, requestInit);
|
|
3242
|
+
}
|
|
3243
|
+
catch (e) {
|
|
3244
|
+
throw newFetchError(e, false);
|
|
3245
|
+
}
|
|
2650
3246
|
if (response.status !== 200) {
|
|
2651
3247
|
throw new VtecxNextError(401, `Get user information failed. status=${response.status}`);
|
|
2652
3248
|
}
|
|
@@ -2679,7 +3275,13 @@ const oauthLink = async (req, res, provider, userInfo) => {
|
|
|
2679
3275
|
const method = 'POST';
|
|
2680
3276
|
const url = `/o/${provider}/link?state=${userInfo.state}${param}`;
|
|
2681
3277
|
const reqFeed = [{ 'title': userInfo.guid, 'subtitle': userInfo.nickname }];
|
|
2682
|
-
|
|
3278
|
+
let response;
|
|
3279
|
+
try {
|
|
3280
|
+
response = await fetchVtecx(method, url, {}, JSON.stringify(reqFeed));
|
|
3281
|
+
}
|
|
3282
|
+
catch (e) {
|
|
3283
|
+
throw newFetchError(e, true);
|
|
3284
|
+
}
|
|
2683
3285
|
const feed = await response.json();
|
|
2684
3286
|
// vte.cxからのset-cookieを転記
|
|
2685
3287
|
setCookie(response, res);
|