From d9a23da81d4483ae61e89f11b789d4bcb78f0e09 Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Wed, 3 Apr 2024 16:36:26 +0530 Subject: [PATCH 01/18] update for file upload survey --- src/proxies_v8/proxies_v8.ts | 40 ++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index 71af4a967..544e194bc 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -833,6 +833,46 @@ proxiesV8.use('/catalog/*', proxyCreatorSunbird(express.Router(), `${CONSTANTS.KONG_API_BASE}`) ) +proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { + if (req.files && req.files.data) { + const url = removePrefix('/proxies/v8', req.originalUrl) + const file: UploadedFile = req.files.data as UploadedFile + const formData = new FormData() + formData.append('file', Buffer.from(file.data), { + contentType: file.mimetype, + filename: file.name, + }) + formData.submit( + { + headers: { + // tslint:disable-next-line:max-line-length + Authorization: CONSTANTS.SB_API_KEY, + // tslint:disable-next-line: all + 'x-authenticated-user-token': extractUserToken(req) + }, + host: 'kong', + path: url, + port: 8000, + }, + // tslint:disable-next-line: all + (err, response) => { + // tslint:disable-next-line: all + response.on('data', (data) => { + if (!err && (response.statusCode === 200 || response.statusCode === 201)) { + res.send(JSON.parse(data.toString('utf8'))) + } else { + res.send(data.toString('utf8')) + } + }) + if (err) { + res.send(err) + } + } + ) + } else { + res.send(FILE_NOT_FOUND_ERR) + } +}) export interface IUserProfile { channel: string firstName: string From b569861839a86d5e0f368f61a95a4ee52a4054e2 Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Wed, 3 Apr 2024 19:02:17 +0530 Subject: [PATCH 02/18] update for file upload for survey --- src/proxies_v8/proxies_v8.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index 544e194bc..19a277599 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -377,7 +377,7 @@ proxiesV8.use('/dashboard/*', proxyCreatorSunbird(express.Router(), `${CONSTANTS.KONG_API_BASE}`) ) // tslint:disable-next-line:max-line-length -proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workflow/admin/transition/bulkupdate', '/cloud-services/mlcore/v1/files/upload'], (req, res) => { +proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workflow/admin/transition/bulkupdate'], (req, res) => { if (req.files && req.files.data) { const url = removePrefix('/proxies/v8', req.originalUrl) const file: UploadedFile = req.files.data as UploadedFile @@ -834,9 +834,9 @@ proxiesV8.use('/catalog/*', ) proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { - if (req.files && req.files.data) { + if (req.files && req.files.file) { const url = removePrefix('/proxies/v8', req.originalUrl) - const file: UploadedFile = req.files.data as UploadedFile + const file: UploadedFile = req.files.file as UploadedFile const formData = new FormData() formData.append('file', Buffer.from(file.data), { contentType: file.mimetype, From 5544d77cdaca3c2ae727c5888e5765e86095fb6d Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 11:48:39 +0530 Subject: [PATCH 03/18] update for fileupload survey --- src/proxies_v8/proxies_v8.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index 19a277599..306e11179 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -834,14 +834,18 @@ proxiesV8.use('/catalog/*', ) proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { + console.log('req'); if (req.files && req.files.file) { const url = removePrefix('/proxies/v8', req.originalUrl) const file: UploadedFile = req.files.file as UploadedFile + console.log('url', url); + console.log('file', file); const formData = new FormData() formData.append('file', Buffer.from(file.data), { contentType: file.mimetype, filename: file.name, }) + console.log('formData', formData); formData.submit( { headers: { From b24111e9e44133e13d04d4b5ac3d0cdae6563ae8 Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 11:54:07 +0530 Subject: [PATCH 04/18] update for fileupload survey --- src/proxies_v8/proxies_v8.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index 306e11179..7e18516d7 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -834,17 +834,21 @@ proxiesV8.use('/catalog/*', ) proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { + // tslint:disable-next-line: all console.log('req'); if (req.files && req.files.file) { const url = removePrefix('/proxies/v8', req.originalUrl) const file: UploadedFile = req.files.file as UploadedFile + // tslint:disable-next-line: all console.log('url', url); + // tslint:disable-next-line: all console.log('file', file); const formData = new FormData() formData.append('file', Buffer.from(file.data), { contentType: file.mimetype, filename: file.name, }) + // tslint:disable-next-line: all console.log('formData', formData); formData.submit( { From 472148f4def675878612ef110ff969c1edbaf162 Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 13:48:20 +0530 Subject: [PATCH 05/18] update for fileupload survey --- src/utils/proxyCreator.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/proxyCreator.ts b/src/utils/proxyCreator.ts index 25ba54886..7178f731d 100644 --- a/src/utils/proxyCreator.ts +++ b/src/utils/proxyCreator.ts @@ -53,7 +53,7 @@ proxy.on('proxyReq', (proxyReq: any, req: any, _res: any, _options: any) => { console.log('REQ_URL_ORIGINAL discussion', proxyReq.path) } - if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && req.body) { + if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && !req.originalUrl.includes('/cloud-services/mlcore/v1/files/upload/*') && req.body) { const bodyData = JSON.stringify(req.body) proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData)) proxyReq.write(bodyData) From a702a487351d5944fb9aa4b524da7a9f4e0562fa Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 13:53:08 +0530 Subject: [PATCH 06/18] update for fileupload survey --- src/utils/proxyCreator.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/utils/proxyCreator.ts b/src/utils/proxyCreator.ts index 7178f731d..028af8d1f 100644 --- a/src/utils/proxyCreator.ts +++ b/src/utils/proxyCreator.ts @@ -53,6 +53,7 @@ proxy.on('proxyReq', (proxyReq: any, req: any, _res: any, _options: any) => { console.log('REQ_URL_ORIGINAL discussion', proxyReq.path) } + // tslint:disable-next-line:max-line-length if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && !req.originalUrl.includes('/cloud-services/mlcore/v1/files/upload/*') && req.body) { const bodyData = JSON.stringify(req.body) proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData)) From beb39b14f3bb62121a21507863673165c56f370d Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 14:09:43 +0530 Subject: [PATCH 07/18] update for fileupload survey --- src/proxies_v8/proxies_v8.ts | 78 +++++++++++++++++++++++++++++++----- src/utils/proxyCreator.ts | 2 + 2 files changed, 69 insertions(+), 11 deletions(-) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index 7e18516d7..1dc8eb941 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -833,30 +833,37 @@ proxiesV8.use('/catalog/*', proxyCreatorSunbird(express.Router(), `${CONSTANTS.KONG_API_BASE}`) ) +// tslint:disable-next-line:max-line-length proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { // tslint:disable-next-line: all - console.log('req'); - if (req.files && req.files.file) { + console.log('req', req); + if (req.files && req.files.data) { const url = removePrefix('/proxies/v8', req.originalUrl) - const file: UploadedFile = req.files.file as UploadedFile - // tslint:disable-next-line: all - console.log('url', url); - // tslint:disable-next-line: all - console.log('file', file); + const file: UploadedFile = req.files.data as UploadedFile const formData = new FormData() formData.append('file', Buffer.from(file.data), { contentType: file.mimetype, filename: file.name, - }) - // tslint:disable-next-line: all - console.log('formData', formData); + }) + let rootOrgId = _.get(req, 'session.rootOrgId') + if (!rootOrgId) { + rootOrgId = '' + } + let channel = _.get(req, 'session.channel') + if (!channel) { + channel = '' + } formData.submit( { headers: { // tslint:disable-next-line:max-line-length Authorization: CONSTANTS.SB_API_KEY, // tslint:disable-next-line: all - 'x-authenticated-user-token': extractUserToken(req) + 'x-authenticated-user-channel': encodeURIComponent(channel), + 'x-authenticated-user-orgid': rootOrgId, + 'x-authenticated-user-orgname': encodeURIComponent(channel), + 'x-authenticated-user-token': extractUserToken(req), + 'x-authenticated-userid': extractUserIdFromRequest(req), }, host: 'kong', path: url, @@ -881,6 +888,55 @@ proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { res.send(FILE_NOT_FOUND_ERR) } }) + +// proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { +// // tslint:disable-next-line: all +// console.log('req', req); +// if (req.files && req.files.data) { +// const url = removePrefix('/proxies/v8', req.originalUrl) +// const file: UploadedFile = req.files.data as UploadedFile +// // tslint:disable-next-line: all +// console.log('url', url); +// // tslint:disable-next-line: all +// console.log('file', file); +// const formData = new FormData() +// formData.append('file', Buffer.from(file.data), { +// contentType: file.mimetype, +// filename: file.name, +// }) +// // tslint:disable-next-line: all +// console.log('formData', formData); +// formData.submit( +// { +// headers: { +// // tslint:disable-next-line:max-line-length +// Authorization: CONSTANTS.SB_API_KEY, +// // tslint:disable-next-line: all +// 'x-authenticated-user-token': extractUserToken(req) +// }, +// host: 'kong', +// path: url, +// port: 8000, +// }, +// // tslint:disable-next-line: all +// (err, response) => { +// // tslint:disable-next-line: all +// response.on('data', (data) => { +// if (!err && (response.statusCode === 200 || response.statusCode === 201)) { +// res.send(JSON.parse(data.toString('utf8'))) +// } else { +// res.send(data.toString('utf8')) +// } +// }) +// if (err) { +// res.send(err) +// } +// } +// ) +// } else { +// res.send(FILE_NOT_FOUND_ERR) +// } +// }) export interface IUserProfile { channel: string firstName: string diff --git a/src/utils/proxyCreator.ts b/src/utils/proxyCreator.ts index 028af8d1f..2b67dfe2c 100644 --- a/src/utils/proxyCreator.ts +++ b/src/utils/proxyCreator.ts @@ -55,6 +55,8 @@ proxy.on('proxyReq', (proxyReq: any, req: any, _res: any, _options: any) => { } // tslint:disable-next-line:max-line-length if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && !req.originalUrl.includes('/cloud-services/mlcore/v1/files/upload/*') && req.body) { + // tslint:disable-next-line: no-console + console.log('req in creator', req); const bodyData = JSON.stringify(req.body) proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData)) proxyReq.write(bodyData) From 00d76d5033d38c77f8db80ea279800a08b03c713 Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 14:25:30 +0530 Subject: [PATCH 08/18] update for fileupload survey --- src/proxies_v8/proxies_v8.ts | 4 +++- src/utils/proxyCreator.ts | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index 1dc8eb941..cdfe8d8df 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -349,7 +349,9 @@ proxiesV8.use('/notification/*', proxiesV8.post('/org/v1/search', async (req, res) => { const roleData = lodash.get(req, 'session.userRoles') + // tslint:disable-next-line const rootOrgId = lodash.get(req, 'session.rootOrgId') + // tslint:disable-next-line let urlPath = API_END_POINTS.kongSearchOrg if (roleData.includes('STATE_ADMIN')) { req.body.request.filters.sbRootOrgId = rootOrgId @@ -903,7 +905,7 @@ proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { // formData.append('file', Buffer.from(file.data), { // contentType: file.mimetype, // filename: file.name, -// }) +// }) // // tslint:disable-next-line: all // console.log('formData', formData); // formData.submit( diff --git a/src/utils/proxyCreator.ts b/src/utils/proxyCreator.ts index 2b67dfe2c..099762a45 100644 --- a/src/utils/proxyCreator.ts +++ b/src/utils/proxyCreator.ts @@ -56,7 +56,7 @@ proxy.on('proxyReq', (proxyReq: any, req: any, _res: any, _options: any) => { // tslint:disable-next-line:max-line-length if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && !req.originalUrl.includes('/cloud-services/mlcore/v1/files/upload/*') && req.body) { // tslint:disable-next-line: no-console - console.log('req in creator', req); + console.log('req in creator', req) const bodyData = JSON.stringify(req.body) proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData)) proxyReq.write(bodyData) From 48874f5aecae71d3964b1ac7e14b851f00e17f17 Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 14:41:09 +0530 Subject: [PATCH 09/18] update for fileupload survey --- src/utils/proxyCreator.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/proxyCreator.ts b/src/utils/proxyCreator.ts index 099762a45..672a612d3 100644 --- a/src/utils/proxyCreator.ts +++ b/src/utils/proxyCreator.ts @@ -54,7 +54,7 @@ proxy.on('proxyReq', (proxyReq: any, req: any, _res: any, _options: any) => { } // tslint:disable-next-line:max-line-length - if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && !req.originalUrl.includes('/cloud-services/mlcore/v1/files/upload/*') && req.body) { + if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && !req.originalUrl.includes('/cloud-services/mlcore/v1/files/*') && req.body) { // tslint:disable-next-line: no-console console.log('req in creator', req) const bodyData = JSON.stringify(req.body) From 0989358efb9903b6d51e58c002089a28b63b4a89 Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 14:56:38 +0530 Subject: [PATCH 10/18] update for fileupload survey --- src/utils/proxyCreator.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/utils/proxyCreator.ts b/src/utils/proxyCreator.ts index 672a612d3..5eee14fa7 100644 --- a/src/utils/proxyCreator.ts +++ b/src/utils/proxyCreator.ts @@ -56,6 +56,8 @@ proxy.on('proxyReq', (proxyReq: any, req: any, _res: any, _options: any) => { // tslint:disable-next-line:max-line-length if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && !req.originalUrl.includes('/cloud-services/mlcore/v1/files/*') && req.body) { // tslint:disable-next-line: no-console + console.log('req in creator original url', req.originalUrl); + console.log('req in creator original url including not condition', !req.originalUrl.includes('/cloud-services/mlcore/v1/files/*')); console.log('req in creator', req) const bodyData = JSON.stringify(req.body) proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData)) From 46aa37785f58f015cc6215d8ba5bb01a7e738a5a Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 15:34:20 +0530 Subject: [PATCH 11/18] update for fileupload survey --- src/utils/proxyCreator.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/utils/proxyCreator.ts b/src/utils/proxyCreator.ts index 5eee14fa7..49ce89d1d 100644 --- a/src/utils/proxyCreator.ts +++ b/src/utils/proxyCreator.ts @@ -57,7 +57,9 @@ proxy.on('proxyReq', (proxyReq: any, req: any, _res: any, _options: any) => { if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && !req.originalUrl.includes('/cloud-services/mlcore/v1/files/*') && req.body) { // tslint:disable-next-line: no-console console.log('req in creator original url', req.originalUrl); + // tslint:disable-next-line: no-console console.log('req in creator original url including not condition', !req.originalUrl.includes('/cloud-services/mlcore/v1/files/*')); + // tslint:disable-next-line: no-console console.log('req in creator', req) const bodyData = JSON.stringify(req.body) proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData)) From 2c3833888892aa91f66a32727ccbd407e4a2ede6 Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 15:43:19 +0530 Subject: [PATCH 12/18] update for fileupload survey --- src/utils/proxyCreator.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/utils/proxyCreator.ts b/src/utils/proxyCreator.ts index 49ce89d1d..b770a3d0a 100644 --- a/src/utils/proxyCreator.ts +++ b/src/utils/proxyCreator.ts @@ -54,11 +54,11 @@ proxy.on('proxyReq', (proxyReq: any, req: any, _res: any, _options: any) => { } // tslint:disable-next-line:max-line-length - if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && !req.originalUrl.includes('/cloud-services/mlcore/v1/files/*') && req.body) { + if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && !req.originalUrl.includes('/cloud-services/mlcore/v1/files/') && req.body) { // tslint:disable-next-line: no-console console.log('req in creator original url', req.originalUrl); // tslint:disable-next-line: no-console - console.log('req in creator original url including not condition', !req.originalUrl.includes('/cloud-services/mlcore/v1/files/*')); + console.log('req in creator original url including not condition', !req.originalUrl.includes('/cloud-services/mlcore/v1/files/')); // tslint:disable-next-line: no-console console.log('req in creator', req) const bodyData = JSON.stringify(req.body) From 3841503bd0ffd11e68fa688ac478cb2733d496fc Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 16:15:47 +0530 Subject: [PATCH 13/18] update for fileupload survey --- src/proxies_v8/proxies_v8.ts | 3 ++- src/utils/proxyCreator.ts | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index 3ae06820e..3c1885880 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -838,7 +838,8 @@ proxiesV8.use('/catalog/*', // tslint:disable-next-line:max-line-length proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { // tslint:disable-next-line: all - console.log('req', req); + console.log('req for files--->', req); + console.log('req files--->', req.files); if (req.files && req.files.data) { const url = removePrefix('/proxies/v8', req.originalUrl) const file: UploadedFile = req.files.data as UploadedFile diff --git a/src/utils/proxyCreator.ts b/src/utils/proxyCreator.ts index b770a3d0a..7d2b63661 100644 --- a/src/utils/proxyCreator.ts +++ b/src/utils/proxyCreator.ts @@ -54,11 +54,11 @@ proxy.on('proxyReq', (proxyReq: any, req: any, _res: any, _options: any) => { } // tslint:disable-next-line:max-line-length - if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && !req.originalUrl.includes('/cloud-services/mlcore/v1/files/') && req.body) { + if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && req.body) { // tslint:disable-next-line: no-console console.log('req in creator original url', req.originalUrl); // tslint:disable-next-line: no-console - console.log('req in creator original url including not condition', !req.originalUrl.includes('/cloud-services/mlcore/v1/files/')); + console.log('req in creator original url including not condition', !req.originalUrl.includes('/cloud-services/mlcore/v1/files/*')); // tslint:disable-next-line: no-console console.log('req in creator', req) const bodyData = JSON.stringify(req.body) From 12d5746cd2fab2331a0043b05846d1ae26b482ad Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 16:16:16 +0530 Subject: [PATCH 14/18] update for fileupload survey --- src/proxies_v8/proxies_v8.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index 3c1885880..2cf36d2fb 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -839,6 +839,7 @@ proxiesV8.use('/catalog/*', proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { // tslint:disable-next-line: all console.log('req for files--->', req); + // tslint:disable-next-line: all console.log('req files--->', req.files); if (req.files && req.files.data) { const url = removePrefix('/proxies/v8', req.originalUrl) From f10a1aabcb59d5758dc0cfb152af2abc2ef52b2e Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 16:33:38 +0530 Subject: [PATCH 15/18] update for fileupload survey --- src/proxies_v8/proxies_v8.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index 2cf36d2fb..bc80d0a84 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -379,7 +379,11 @@ proxiesV8.use('/dashboard/*', proxyCreatorSunbird(express.Router(), `${CONSTANTS.KONG_API_BASE}`) ) // tslint:disable-next-line:max-line-length -proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workflow/admin/transition/bulkupdate'], (req, res) => { +proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workflow/admin/transition/bulkupdate', '/cloud-services/mlcore/v1/files/upload'], (req, res) => { + // tslint:disable-next-line: all + console.log('req for files--->', req); + // tslint:disable-next-line: all + console.log('req files--->', req.files); if (req.files && req.files.data) { const url = removePrefix('/proxies/v8', req.originalUrl) const file: UploadedFile = req.files.data as UploadedFile From 6c81d811ce79b3651c27d1af69f36669bfaaa913 Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 19:46:05 +0530 Subject: [PATCH 16/18] update for fileupload survey --- src/proxies_v8/proxies_v8.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index bc80d0a84..ceeb3df73 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -379,7 +379,7 @@ proxiesV8.use('/dashboard/*', proxyCreatorSunbird(express.Router(), `${CONSTANTS.KONG_API_BASE}`) ) // tslint:disable-next-line:max-line-length -proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workflow/admin/transition/bulkupdate', '/cloud-services/mlcore/v1/files/upload'], (req, res) => { +proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workflow/admin/transition/bulkupdate'], (req, res) => { // tslint:disable-next-line: all console.log('req for files--->', req); // tslint:disable-next-line: all @@ -840,14 +840,14 @@ proxiesV8.use('/catalog/*', ) // tslint:disable-next-line:max-line-length -proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { +proxiesV8.post(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { // tslint:disable-next-line: all console.log('req for files--->', req); // tslint:disable-next-line: all console.log('req files--->', req.files); - if (req.files && req.files.data) { + if (req.files && req.files.file) { const url = removePrefix('/proxies/v8', req.originalUrl) - const file: UploadedFile = req.files.data as UploadedFile + const file: UploadedFile = req.files.file as UploadedFile const formData = new FormData() formData.append('file', Buffer.from(file.data), { contentType: file.mimetype, From a942599cb321c9cabe1f2897e375bce75aba63bf Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 20:22:40 +0530 Subject: [PATCH 17/18] update for fileupload survey --- src/proxies_v8/proxies_v8.ts | 65 +++++++++++++++++++++++++++++++----- 1 file changed, 56 insertions(+), 9 deletions(-) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index ceeb3df73..458826214 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -379,11 +379,11 @@ proxiesV8.use('/dashboard/*', proxyCreatorSunbird(express.Router(), `${CONSTANTS.KONG_API_BASE}`) ) // tslint:disable-next-line:max-line-length -proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workflow/admin/transition/bulkupdate'], (req, res) => { - // tslint:disable-next-line: all - console.log('req for files--->', req); - // tslint:disable-next-line: all - console.log('req files--->', req.files); +proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workflow/admin/transition/bulkupdate', '/cloud-services/mlcore/v1/files/upload'], (req, res) => { + // tslint:disable-next-line: all + console.log('req for files--->', req); + // tslint:disable-next-line: all + console.log('req files--->', req.files); if (req.files && req.files.data) { const url = removePrefix('/proxies/v8', req.originalUrl) const file: UploadedFile = req.files.data as UploadedFile @@ -431,7 +431,54 @@ proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workfl } } ) - } else { + } else if (req.files && req.files.file) { + const url = removePrefix('/proxies/v8', req.originalUrl) + const file: UploadedFile = req.files.file as UploadedFile + const formData = new FormData() + formData.append('file', Buffer.from(file.data), { + contentType: file.mimetype, + filename: file.name, + }) + let rootOrgId = _.get(req, 'session.rootOrgId') + if (!rootOrgId) { + rootOrgId = '' + } + let channel = _.get(req, 'session.channel') + if (!channel) { + channel = '' + } + formData.submit( + { + headers: { + // tslint:disable-next-line:max-line-length + Authorization: CONSTANTS.SB_API_KEY, + // tslint:disable-next-line: all + 'x-authenticated-user-channel': encodeURIComponent(channel), + 'x-authenticated-user-orgid': rootOrgId, + 'x-authenticated-user-orgname': encodeURIComponent(channel), + 'x-authenticated-user-token': extractUserToken(req), + 'x-authenticated-userid': extractUserIdFromRequest(req), + }, + host: 'kong', + path: url, + port: 8000, + }, + // tslint:disable-next-line: all + (err, response) => { + // tslint:disable-next-line: all + response.on('data', (data) => { + if (!err && (response.statusCode === 200 || response.statusCode === 201 || response.statusCode === 406)) { + res.status(response.statusCode).send(JSON.parse(data.toString('utf8'))) + } else { + res.status(500).send(data.toString('utf8')) + } + }) + if (err) { + res.status(500).send(err) + } + } + ) + } else { res.status(500).send(FILE_NOT_FOUND_ERR) } }) @@ -840,14 +887,14 @@ proxiesV8.use('/catalog/*', ) // tslint:disable-next-line:max-line-length -proxiesV8.post(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { +proxiesV8.patch(['/cloud-services/mlcore/v1/files/upload'], (req, res) => { // tslint:disable-next-line: all console.log('req for files--->', req); // tslint:disable-next-line: all console.log('req files--->', req.files); - if (req.files && req.files.file) { + if (req.files && req.files.data) { const url = removePrefix('/proxies/v8', req.originalUrl) - const file: UploadedFile = req.files.file as UploadedFile + const file: UploadedFile = req.files.data as UploadedFile const formData = new FormData() formData.append('file', Buffer.from(file.data), { contentType: file.mimetype, From 4104f52ee204bf3d4863238859985366a296b252 Mon Sep 17 00:00:00 2001 From: vishnubansal Date: Thu, 4 Apr 2024 20:32:56 +0530 Subject: [PATCH 18/18] update for fileupload survey --- src/proxies_v8/proxies_v8.ts | 4 ++++ src/utils/proxyCreator.ts | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/proxies_v8/proxies_v8.ts b/src/proxies_v8/proxies_v8.ts index 458826214..e5e82977b 100644 --- a/src/proxies_v8/proxies_v8.ts +++ b/src/proxies_v8/proxies_v8.ts @@ -385,6 +385,7 @@ proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workfl // tslint:disable-next-line: all console.log('req files--->', req.files); if (req.files && req.files.data) { + // tslint:disable-next-line:all const url = removePrefix('/proxies/v8', req.originalUrl) const file: UploadedFile = req.files.data as UploadedFile const formData = new FormData() @@ -396,6 +397,7 @@ proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workfl if (!rootOrgId) { rootOrgId = '' } + // tslint:disable-next-line:all let channel = _.get(req, 'session.channel') if (!channel) { channel = '' @@ -407,7 +409,9 @@ proxiesV8.post(['/user/v1/bulkupload', '/storage/profilePhotoUpload/*', '/workfl Authorization: CONSTANTS.SB_API_KEY, // tslint:disable-next-line: all 'x-authenticated-user-channel': encodeURIComponent(channel), + // tslint:disable-next-line 'x-authenticated-user-orgid': rootOrgId, + // tslint:disable-next-line 'x-authenticated-user-orgname': encodeURIComponent(channel), 'x-authenticated-user-token': extractUserToken(req), 'x-authenticated-userid': extractUserIdFromRequest(req), diff --git a/src/utils/proxyCreator.ts b/src/utils/proxyCreator.ts index 7d2b63661..4e5b55dc7 100644 --- a/src/utils/proxyCreator.ts +++ b/src/utils/proxyCreator.ts @@ -56,9 +56,9 @@ proxy.on('proxyReq', (proxyReq: any, req: any, _res: any, _options: any) => { // tslint:disable-next-line:max-line-length if (!req.originalUrl.includes('/storage/upload') && !req.originalUrl.includes('/storage/profilePhotoUpload/*') && req.body) { // tslint:disable-next-line: no-console - console.log('req in creator original url', req.originalUrl); + console.log('req in creator original url', req.originalUrl) // tslint:disable-next-line: no-console - console.log('req in creator original url including not condition', !req.originalUrl.includes('/cloud-services/mlcore/v1/files/*')); + console.log('req in creator original url including not condition', !req.originalUrl.includes('/cloud-services/mlcore/v1/files/*')) // tslint:disable-next-line: no-console console.log('req in creator', req) const bodyData = JSON.stringify(req.body)