Avalados por :

Como obter um token correto para SAP Event Mesh sem erros - Guia passo a passo.

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 2 Vistas
0
Cargando...

Estou usando o seguinte código para obter o token do servidor Event Mesh, consegui sem erros.

No entanto, este token está incorreto, o comprimento é apenas de 1601, e o comprimento correto do token deveria ser de 1869.

Isso faz com que o seguinte bloco de código para publicar um evento no SAP Event Mesh falhe com uma mensagem de erro de não autorizado.

Alguém conseguiu obter um token correto antes? Por favor, ajude, obrigado.

const fetch = require('node-fetch');

        async function getEMAccessToken() {
            const EMTokenURL = 'sua-url-de-token';
            const EMClientID = 'seu-id-de-cliente';
            const EMClientSecret = 'seu-segredo-de-cliente';

            const credentials = Buffer.from(`${EMClientID}:${EMClientSecret}`).toString('base64');

            const response = await fetch(EMTokenURL, {
                method: 'POST',
                headers: {
                    'Content-Type': 'application/x-www-form-urlencoded',
                    'Authorization': `Basic ${credentials}`
                },
                body: 'grant_type=client_credentials'
            });

            if (!response.ok) {
                throw new Error(`Erro HTTP! estado: ${response.status}`);
            }

            const data = await response.json();
            return data.access_token;
        }
        
    
Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Olá Gregor, obrigado pelo seu comentário, a conexão manual é para um caso de uso especial.

Também estou tentando seguir o documento CAP sobre malha de eventos, mas estou enfrentando alguns problemas ao implementar o projeto no Cloud Foundry, uma vez que resolva o problema de implementação, tentarei novamente.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá Dinu,

Obrigado pela sua pergunta. Enquanto estou testando o código acima, consigo obter o token de acesso, porém, ao tentar publicar um evento no SAP Event Mesh na etapa seguinte, sempre recebo um erro de "Não autorizado".

Após várias horas de luta, decido finalmente escrever uma aplicação de desktop .NET para verificar a lógica, e funciona. Em seguida, utilizo o token de acesso que obtive na aplicação .NET e o colo no meu bloco de código Javascript para publicar o evento, e também funciona corretamente.

Então, simplesmente faço uma comparação entre o token de acesso do código Javascript e da Aplicação .NET, e descubro que o comprimento é diferente. Na verdade, os primeiros 185 caracteres do token de acesso são iguais.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Por que você diz que o token precisa ter um comprimento de 1869?

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?