收藏
回答

【第三方平台代公众号网页授权】报错 10003(redirect_uri 域名与后台配置不一致 ?

【第三方平台代公众号网页授权】手机微信内打开立即报错 10003(redirect_uri 域名与后台配置不一致)

一、问题描述

在微信 **手机客户端** 内,用户通过「公众号推送的图文/链接」进入我方 H5 入口后,服务端返回 **302**,跳转至:

`https://open.weixin.qq.com/connect/oauth2/authorize?appid=【授权方公众号AppID】&redirect_uri=【urlencode 后的回调】&response_type=code&scope=snsapi_base&state=***&component_appid=【第三方平台AppID】#wechat_redirect`

用户在该授权页 **立即** 提示:**「redirect_uri 域名与后台配置不一致,错误码:10003」**。

二、我方业务模式(供定位)

使用 **微信开放平台第三方平台托管 服务号,通过`component_appid` + authorizer appid走代公众号发起网页授权**(`scope=snsapi_base`)。

H5 调度:`https://www.app.com/pq/go?t=会话token` → **302** → 上述 `open.weixin.qq.com` 授权 URL。

授权回调地址为:**`https://www.app.com/pq/oauth/callback`**(仅 GET,`code`/`state` 换 `openid`)。

三、我方已完成的配置(请协助确认是否仍有遗漏/微信侧校验规则)

1. 微信公众平台(对应 **授权方公众号**,与链接中 `appid` 一致)

网页授权域名** 已配置并校验通过:**`www.app.com`**(不含协议与路径)。

业务域名 / JS 接口安全域名已按业务需要单独配置,与 OAuth 回调主机相同,已核查 **网页授权域名列表** 中包含 **`www.app.com`**。

2. 微信开放平台 → 第三方平台(对应 **component_appid**)

授权发起页域名**:**`www.app.com`**(与 `https://www.app.com/pq/go` 同主机)。

公众号开发域名**:**`www.app.com`**(已按页面说明放置校验文件)。

第三方应用 **权限集** 已包含公众号账号管理、基础能力等;该公众号已对本第三方平台 **扫码授权**(曾尝试 **重新授权**)。

3. 服务端与环境

`redirect_uri` **解码后** 严格为:`https://www.app.com/pq/oauth/callback`

服务端进程环境变量:**`PORTAL_PUBLIC_BASE_URL=https://www.app.com`**

Django `ALLOWED_HOSTS`** 已包含 **`www.app.com`**

反代(Nginx):**`location /pq/`** 与 **`/api/`** 一致反代到同一 Django 实例。

曾使用 **同一台服务器** 执行(在 Redis 会话有效时):

  `curl -sI "https://www.app.com/pq/go?t=有效token"`

  返回 **HTTP 302**,`Location` 中 **`redirect_uri` 主机为 `www.app.com`**,且 **`appid` / `component_appid` 与线上一致**。

四、授权链接参数形态(示意,敏感值已掩码)

完整授权 URL 形态类似:

`https://open.weixin.qq.com/connect/oauth2/authorize?appid=【授权方AppID】&redirect_uri=https%3A//www.app.com/pq/oauth/callback&response_type=code&scope=snsapi_base&state=***&component_appid=【第三方AppID】#wechat_redirect`

(说明:亦尝试过 `redirect_uri` 路径中 `/` 采用 `%2F` 全编码形态,`10003` 现象一致。)

五、已排除/已尝试过

公众号主体:用户扫码关注的公众号 **AppID** 与授权 URL 中的 **`appid` 一致**。

已分别在 **`admin` 子域** 与 **`www` 主业务域** 完整配置 **网页授权域名 + 开放平台发起页/开发域名 + 反代 + ALLOWED_HOSTS**,现象均为 **`10003`**,后统一收敛为 **`www.app.com`** 仍 **`10003`**。

- 非 PHP 栈,与 `php_openssl` 无关;服务端 HTTPS 与 `curl` 访问正常。

六、请求协助

1. 请基于 **`appid` + `component_appid` + redirect 域名为 `www.app.com`** 的组合,协助核查 **微信侧对该 `redirect_uri` 的校验结果** 是否仍判定为「与后台配置不一致」。

2. 若存在 **类目 / 第三方平台资质 / 代开发 / 沙箱 / 缓存同步延迟** 等 **非文档显性条件** 也会触发 **10003**,烦请指明 **后台需补充的配置项或工单路径**。

3. 若需我方补充 **开放平台 rid / 完整 authorize URL(可私发脱敏)/ 公众号与第三方绑定截图**,请告知所需材料清单。

回答关注问题邀请回答
收藏

2 个回答

登录 后发表内容