# 第三方生成微信带参数验证码 **Repository Path**: ericchenran/wxchatQrcode ## Basic Information - **Project Name**: 第三方生成微信带参数验证码 - **Description**: 接口概述 适用第三方接口绕过权限限制,实现生成为微笑公众号带参数二维码。可用来实现关注登陆 接口地址 https://chat.orderease.cn/api/wxauth.php 接口功能列表 1. 生成登录二维码 请求方式: GET 接口: ?action=qrcode 返回示例: json { "qrcode_url": "https://yourserver.com/qr - **Primary Language**: PHP - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-12-01 - **Last Updated**: 2024-12-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: PHP ## README **微信扫码登录接口文档** --- ### 接口概述 本接口实现了基于微信公众号的扫码登录功能,用户通过扫描二维码并关注公众号即可完成登录。 ### 接口地址 `https://chat.orderease.cn/api/wxauth.php` ### 接口功能列表 #### 1. 生成登录二维码 - **请求方式**: GET - **接口**: `?action=qrcode` - **返回示例**: ```json { "qrcode_url": "https://yourserver.com/qrcode_image.png", "scene": "unique_scene_value" } ``` 其中`qrcode_url`为生成的二维码图片的URL,`scene`为用于标识二维码的唯一场景值。 #### 2. 处理登录页面 - **请求方式**: GET - **接口**: `?action=login&scene={scene}` - **参数**: - `scene`: 场景值标识,用于与生成的二维码匹配。 - **说明**: 返回包含二维码的HTML登录页面,用户可以在该页面扫描二维码进行登录。 #### 3. 检查登录状态 - **请求方式**: POST - **接口**: `?action=check` - **请求体**: 无 - **返回示例**: ```json { "status": "waiting", // "waiting": 等待用户扫码, "logged_in": 已登录, "expired": 二维码已过期 "token": "user_token_if_logged_in" // 登录成功后返回的token } ``` #### 4. 处理微信回调 - **请求方式**: POST - **接口**: `?action=bind` - **说明**: 处理微信服务器的事件推送,包括用户扫码、关注公众号等事件。 - **请求体**(由微信服务器发送): ```json { "ToUserName": "your_token", "FromUserName": "user_openid", "CreateTime": "timestamp", "MsgType": "event", "Event": "subscribe", // 或其他事件类型 "EventKey": "scene_value_if_exists" } ``` ### 使用流程 1. 前端调用`qrcode`接口获取登录二维码。 2. 展示登录二维码给用户扫描。 3. 定期调用`check`接口检查登录状态(建议前端轮询间隔不小于2秒)。 4. 用户扫码后,微信服务器会调用`bind`接口。 5. 登录成功后,获取用户token和信息。 ### 注意事项 - 二维码有效期为30分钟。 - 需要配置正确的公众号参数(APPID、APPSECRET、TOKEN)。 - 服务器需要正确配置微信服务器的IP白名单。 - 用户token有效期为24小时。 ### 错误码说明 - **签名验证失败**: 微信回调签名校验不通过。 - **二维码已过期**: 场景值已失效。 - **未知的操作类型**: action参数错误。 - **参数错误**: 缺少必要参数。 ### 安全建议 - 生产环境必须使用HTTPS。 - 妥善保管公众号密钥信息。 - 注意防范CSRF攻击。 - 建议增加接口调用频率限制。 --- **注意**:以上接口文档为示例性质,实际使用时请根据具体业务需求和开发环境进行调整。确保所有敏感信息的安全存储和传输,遵循微信公众平台的开发规范。