微信开发中的“10003: redirect_uri域名与后台配置不一致”问题解决

在微信开发中,开发者可能会遇到“10003: redirect_uri域名与后台配置不一致”的错误。这通常是因为在进行OAuth2.0认证时,redirect_uri的配置没有在微信公众平台的后台进行正确设置。本文将为你详细讲解解决这一问题的步骤和实现方式。

解决流程

下面是解决此问题的基本流程:

步骤编号 步骤名称 操作描述
1 确认redirect_uri 确保你使用的redirect_uri正确且与后台一致
2 登录微信公众平台 进入微信公众平台进行配置
3 配置授权回调域名 在开发设置中配置回调域名
4 更新代码中的redirect_uri 确保代码中调用的redirect_uri与你在后台配置的一致
5 测试功能 测试OAuth2.0流程是否正常

1. 确认redirect_uri

首先,你需要确认你在代码中使用的redirect_uri是什么。通常它应看起来像这样:


确保这个URL的域名已经在微信平台的后台配置。

2. 登录微信公众平台

访问 [微信公众平台](

3. 配置授权回调域名

在左侧导航栏中,找到“开发” -> “基本配置”,你会看到“授权回调域名”选项。将你的域名配置在这里,例如:

yourdomain.com

注意:不需要加http://https://

4. 更新代码中的redirect_uri

在你的代码中,确保请求中使用的redirect_uri是什么,并且它的值与你在微信公众平台配置的域名一致。在需请求授权的地方,使用如下方式:

import requests

# 定义授权URL
redirect_uri = "  # 替换为你的redirect_uri
app_id = "your_app_id"  # 替换为你的app_id
scope = "snsapi_userinfo"  # 需要的权限范围

auth_url = f"

# 发送请求
response = requests.get(auth_url)  # 发送GET请求以获取授权

这段代码构造了一个OAuth2.0的请求URL,其中redirect_uri参数必须与后端配置相符。

5. 测试功能

完成以上步骤后,你可以通过调用你所配置的回调链接测试OAuth2.0流程是否正常。在浏览器中输入授权链接,看看是否能够顺利获取用户的授权。

# 打开浏览器,访问授权链接

类图示例

在系统设计中,可以用类图表示用户认证的流程。下面是一个简单的类图示例,展示用户在系统中的认证过程:

classDiagram
    class User {
        +String id
        +String name
        +login()
    }
    
    class Auth {
        +String appId
        +authorize()
        +redirect()
    }
   
    class Callback {
        +String code
        +getAuthorization()
    }
    
    User --> Auth : login
    Auth --> Callback : redirect

结尾

通过以上步骤,你应该能够解决“10003: redirect_uri域名与后台配置不一致”的问题。只需确保代码中的redirect_uri与微信公众平台上的配置一致,并进行必要的代码更新。希望这能帮助你顺利完成开发任务!如有疑问,请随时询问!