立即使用
1. 访问swagger-ui页面
访问 [http://pig-gateway:9999/swagger-ui.html](http://pig-gateway:9999/swagger-ui.html)
打开swagger页面。
:::warning
请求入口必须是 pig-gateway:9999
这种形式, 而不是ip:9999 ,不然跨域。
:::
2. 模拟登陆
填写客户端信息
username: admin
password: YehdBPev # v3.4.2+ 以后输入密文
password: 123456 # 低版本输入 123456
client_id: test
client_secret : test
安全控制
方式一: application-dev.yml中添加如下配置 ,关闭swagger 功能
springdoc:
api-docs:
enabled: false
方式二: gateway-dev.yml 添加basic 登录认证
swagger:
basic:
enabled: true
username: pig
password: pig
Swagger FAQ
1. 切换swagger分组文档页面报错
出现这个问题要么是你对应的服务没有启动,要么是你访问的服务还没有启动完毕,如果还没启动完毕的话,不妨等个十几二十秒再进行访问
2. 刷新页面后认证失效?
官方UI比较蠢萌,虽然提供了Oauth2.0的认证功能,但是没有存储的措施,所以刷新页面后相关参数就会丢失。
3. 认证过程中出现Auth ErrorError: Upgrade Required
?
这个不用怀疑,原因一般不外乎三个。
一、跨域
:::warning
确定是否使用 http://pig-gateway:9999/swagger-ui.html
访问,而非 IP 或者 localhost 访问
:::
二、用户名或密码错误
可以打开谷歌开发者工具,观察request详情和response详情以及返回的状态码,如果是426的话,就证明获取用户信息的时候失败了,可以判断是作为缓存中间件的redis并没有启动,那么只要启动redis,另一个原因是redis中有脏数据,这个时候清空redis即可。清空的具体步骤如下:
windows平台下可以打开redis-cli.exe,然后执行flushdb
或者flushall
命令即可。
三、使用了需要验证码的客户端
除了上面的原因,还有可能返回428的状态码,而会出现这个问题就是使用了需要验证码的客户端。