server/config/autoload/swagger.php

81 lines
2.2 KiB
PHP

<?php
declare(strict_types=1);
use function Hyperf\Support\env;
return [
'enable' => true,
'port' => (int)env("SWAGGER_PORT", 9500),
'json_dir' => BASE_PATH . '/static/swagger/json',
'html' => <<<'HTML'
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta
name="description"
content="SwaggerUI"
/>
<title>SwaggerUI</title>
<link rel="stylesheet" href="https://unpkg.com/swagger-ui-dist@4.5.0/swagger-ui.css" />
</head>
<body>
<div id="swagger-ui"></div>
<script src="https://unpkg.com/swagger-ui-dist@4.5.0/swagger-ui-bundle.js" crossorigin></script>
<script src="https://unpkg.com/swagger-ui-dist@4.5.0/swagger-ui-standalone-preset.js" crossorigin></script>
<script>
window.onload = () => {
window.ui = SwaggerUIBundle({
url: GetQueryString("search"),
dom_id: '#swagger-ui',
presets: [
SwaggerUIBundle.presets.apis,
SwaggerUIStandalonePreset
],
layout: "StandaloneLayout",
});
};
function GetQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg); //获取url中"?"符后的字符串并正则匹配
var context = "";
if (r != null)
context = decodeURIComponent(r[2]);
reg = null;
r = null;
return context == null || context == "" || context == "undefined" ? "/http.json" : context;
}
</script>
</body>
</html>
HTML,
'url' => '/swagger',
'path' =>'/swagger',
'auto_generate' => true,
'scan' => [
'paths' => [
BASE_PATH . '/app/Controller/Admin'
],
],
'processors' => [
// users can append their own processors here
],
'server' => [
'http' => [
'servers' => [
[
'url' => env('DOMAIN') . '/admin',
'description' => '后台接口',
],
],
'info' => [
'title' => '里派基础接口',
'description' => '管理端接口',
'version' => '1.0.0',
],
],
],
];