You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Keycloak在Postman中报错:localhost request not supported 求助

解决Keycloak + Postman认证报错「localhost request not supported」的方案

1. 修正Docker启动参数

Docker运行Keycloak时,必须指定对外的主机名和端口,否则Keycloak内部生成的端点会和你用localhost访问的地址不匹配。启动命令加上KC_HOSTNAME相关参数:

docker run -p 8088:8080 -e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin quay.io/keycloak/keycloak:latest start-dev --hostname=localhost --hostname-port=8088

这里--hostname和--hostname-port要和你实际访问Keycloak的地址完全一致,确保Keycloak返回的所有认证端点都是localhost:8088。

2. 检查领域的前端URL配置

登录Keycloak管理后台(localhost:8088/admin),进入你的领域:

  • 左侧菜单点「Realm Settings」(领域设置)
  • 切换到「General」标签页
  • 确认「Frontend URL」填的是http://localhost:8088/(新版本Keycloak)或者http://localhost:8088/auth/(旧版本)
  • 要是空的话手动填上并保存,这步能保证Keycloak生成的端点URL和你请求的地址匹配。

3. 核对客户端配置

进入你创建的客户端页面:

  • 「Access Type」(访问类型)设为public或者confidential,Postman测试用public更省事
  • 「Valid Redirect URIs」(有效重定向URI)必须包含Postman的回调地址:
    • 网页版Postman用https://oauth.pstmn.io/v1/callback
    • 桌面版可以填http://localhost:8080/*或者http://localhost:8080
  • 「Web Origins」(Web来源)设为*或者http://localhost:8080,允许跨域请求。

4. 调整Postman的OAuth2.0配置

在Postman请求的Auth标签页选OAuth2.0:

  • 「Token Name」随便填个标识就行
  • 「Grant Type」选Authorization Code(授权码模式,最常用)
  • 「Callback URL」必须和Keycloak客户端里的Valid Redirect URIs完全一致,网页版就填https://oauth.pstmn.io/v1/callback
  • 「Auth URL」从Keycloak的OpenID配置里拿,格式是http://localhost:8088/realms/你的领域名/protocol/openid-connect/auth
  • 「Access Token URL」对应http://localhost:8088/realms/你的领域名/protocol/openid-connect/token
  • 要是客户端是confidential类型,还得填「Client Secret」,去Keycloak客户端的Credentials标签页拿。

5. 重启服务清缓存

  • 重启Keycloak容器让配置生效:
docker restart 你的容器ID
  • 清Postman缓存:点右上角设置图标 → 「Settings」→「General」→ 点「Clear Cookies and Site Data」,之后再重试获取令牌。

内容的提问来源于stack exchange,提问作者spaceMerc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 02:32:23