首页 > 解决方案 > 我想在 swagger-ui-react 应用程序自动授权中设置 preauthorizeApiKey

问题描述

我在下面的代码中设置了 preauthorizeApiKey 并且它工作正常并且对 API 的调用也正常工作。API 需要标头“授权:承载 xxxxxxxxxxx”。我将密钥存储在反应存储中并使用 getToken() 读取。

import React from 'react';
import SwaggerUI from 'swagger-ui-react';
import swaggerSpec from '../../swagger.json';
import { getToken } from '../../api/utils'

export const complete=function(swaggerUi)
{
  let token = getToken();
  swaggerUi.preauthorizeApiKey('bearerAuth',  token.Token);
}

const ApiDocs = () => {
  return <SwaggerUI spec={swaggerSpec} onComplete={(swaggerUi) => complete(swaggerUi)} />
};

export default ApiDocs;

以下是我的路线配置:

<Route path="/api-docs" component={ApiDocs} />

我不需要在招摇 UI 屏幕上单击授权按钮,它是自动授权的。只是想分享任何评论/建议/改进。

标签: reactjsauthorizationswagger-ui

解决方案


推荐阅读