Olá pessoal!
Estou criando um app na VTEX para integrar com a transportadora que trabalho, seguindo o Getting Started da documentação, porém surgiu um problema.
Utilizando o VTEX IO em conjunto com o boilerplate, fiz o link do app no meu workspace, sem problemas, o problema ocorre no processo do getAppSettings()
.
Quando insiro esse trecho de código:
const appSettings = await ctx.clients.apps.getAppSettings(
‘’ + process.env.VTEX_APP_ID
)
O App começa a apresentar o erro 500:
{
"__VTEX_IO_LOG": true,
"level": "error",
"app": "{ACOUNT}.{APP_NAME}@0.1.0", // Editado por sigilo
"account": "{ACOUNT}", // Editado por sigilo
"workspace": "development",
"production": false,
"data": {
"config": {
"baseURL": "http://infra.io.vtex.com/apps/v0",
"cacheable": 1,
"headers": {
"Accept": "application/json, text/plain, */*",
"accept-encoding": "gzip",
"user-agent": "{ACOUNT}.{APP_NAME}@0.1.0", // Editado por sigilo
"x-vtex-operation-id": "63f1a25a-c2d5-4915-87c7-c3ce73bcd92b"
},
"method": "get",
"timeout": 2000,
"url": "/{ACOUNT}/development/apps/{ACOUNT}.{APP_NAME}@0.1.0/settings", // Editado por sigilo
"metric": "apps-get-settings",
"params": {}
},
"request": {
"finished": true,
"method": "GET",
"path": "/apps/v0/{ACOUNT}/development/apps/{ACOUNT}.{APP_NAME}@0.1.0/settings" // Editado por sigilo
},
"response": {
"data": {
"code": "GenericError",
"message": "Error calling Authorization Engine",
"source": "Vtex.Kube.Router",
"requestId": "ee8a1f7f7d6c43adbd5c6a645ebb3fa9"
},
"headers": {
"connection": "close",
"content-type": "application/json; charset=utf-8",
"date": "Tue, 28 Jun 2022 20:09:08 GMT",
"server": "VTEX IO",
"cache-control": "public, max-age=2",
"pragma": "public, max-age=2",
"transfer-encoding": "chunked",
"x-request-id": "ee8a1f7f7d6c43adbd5c6a645ebb3fa9",
"x-vtex-router-elapsed-time": "00:00:00.0061103",
"x-vtex-io-cluster-id": "devs-b"
},
"status": 500
},
"isAxiosError": true,
"errorReportMetadata": {
"errorId": "b37f2039e4c229bcc9cba6244224c4e6",
"reportCount": 0
},
"name": "Error",
"message": "Request failed with status code 500",
"stack": "Error: Request failed with status code 500\n at createError (/usr/local/app/node_modules/axios/lib/core/createError.js:16:15)\n at settle (/usr/local/app/node_modules/axios/lib/core/settle.js:17:12)\n at IncomingMessage.handleStreamEnd (/usr/local/app/node_modules/axios/lib/adapters/http.js:260:11)\n at IncomingMessage.emit (events.js:326:22)\n at endReadableNT (_stream_readable.js:1241:12)\n at processTicksAndRejections (internal/process/task_queues.js:84:21)",
"code": "E_HTTP_500",
"caller": "{MEU EMAIL}", // Editado por sigilo
"forwardedProto": "https",
"method": "POST",
"operationId": "63f1a25a-c2d5-4915-87c7-c3ce73bcd92b",
"params": {
"account": "{ACOUNT}", // Editado por sigilo
"workspace": "development"
},
"query": {},
"requestId": "886bbd5fae15445e98cd4350af44d4dd",
"routeId": "notify",
"serverTiming": {
"0.{APP_NAME}#GoogleClient": "XXXX", // Editado por sigilo
"0.{APP_NAME}#Apps": "XXX" // Editado por sigilo
},
"status": 500
},
"operationId": "63f1a25a-c2d5-4915-87c7-c3ce73bcd92b",
"requestId": "886bbd5fae15445e98cd4350af44d4dd",
"__SKIDDER_TOPIC_1": "skidder.vendor.{ACOUNT}", // Editado por sigilo
"__SKIDDER_TOPIC_2": "skidder.app.{ACOUNT}.{APP_NAME}" // Editado por sigilo
}
Logo não consigo pegar as informações contidas no app do cliente, como o token do meu cliente.
Se removo essa parte do getAppSettings()
e faço o app retornar uma response
genérica, ele responde sem nenhum problema.
Existe algum processo para fazer essa requisição?
O boilerplate contém todo o código que estou utilizando.