Comando de curvatura exibido como indefinido com token na interface do usuário do swagger.


8

Estou integrando a interface do usuário do swagger no meu projeto. Preciso passar o token para fazer uma solicitação.

const mytoken = "heareismytoken";

const ui = SwaggerUIBundle({
    url: "/swagger/v2/swagger.json",
    dom_id: '#swagger-ui',
    deepLinking: true,
    requestInterceptor: function (req) {
        var key = mytoken;

        if (key && key.trim() !== "") {
            req.headers.Authorization = 'Bearer ' + key;
            console.log('Authorized from authKey');
        }
    },
    presets: [
        SwaggerUIBundle.presets.apis,
        SwaggerUIStandalonePreset
    ],
    plugins: [
        SwaggerUIBundle.plugins.DownloadUrl
    ],
    layout: "StandaloneLayout",
});

Com o código acima, estou obtendo a resposta bem-sucedida, mas o problema é o comando curl, mostrando-se indefinido, como na imagem abaixoinsira a descrição da imagem aqui

Se eu removi a seguinte parte do código

    /* 
    requestInterceptor: function (req) {
        var key = mytoken;

        if (key && key.trim() !== "") {
            req.headers.Authorization = 'Bearer ' + key;
            console.log('Authorized from authKey');
        }
    }, */

o comando curl está sendo exibido, mas a resposta está gerando o erro de autenticação.

Não sei exatamente onde estou sentindo falta. Como mostrar o comando CURL e a resposta.?


Você também pode postar o código onde mytokenestá definido?
Helen

@ Helen Adicionei o token no topo depois que estou chamando o método.
mkHun 27/03

Respostas:


2

De acordo com a documentação da Swagger UI :

requestInterceptor:

Function=(a => a). DEVE ser uma função. Função para interceptar solicitações de definição remota, "Experimente" e OAuth 2.0. Aceita um argumento requestInterceptor (request) e deve retornar a solicitação modificada ou uma Promessa que resolve a solicitação modificada.

A declaração de retorno de código fornecida está ausente . O código correto será:

requestInterceptor: function (req) {
    var key = mytoken;

    if (key && key.trim() !== "") {
        req.headers.Authorization = 'Bearer ' + key;
        console.log('Authorized from authKey');
    }
    return req; // <--- This line was added
}
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.