微信登录配置
微信登录配置用于集成微信公众号,实现用户通过微信扫码登录、注册等功能。系统通过关联微信公众号完成用户身份验证,支持扫码登录、静默登录以及自动回复等功能。
配置概览
微信登录配置包含以下功能类别:
- 登录开关: 控制微信登录和静默登录的启用状态
- 公众号基本信息: 公众号名称、AppID、AppSecret、Token等
- 第三方代理服务: 可选的微信API代理配置(适用于内网环境)
- 自动回复消息: 订阅欢迎、绑定成功/失败、扫码登录等自动回复内容
配置项说明
登录开关配置
是否开启微信登录注册
- 功能说明: 控制用户是否可以使用微信扫码方式登录和注册系统
- 可选值:
- 开启: 用户端登录页显示"微信登录"选项,可通过扫码登录
- 关闭: 不显示微信登录入口
- 建议:
- 确保已完成微信公众号配置并验证通过后再开启
- 个人订阅号不支持微信登录功能,需要认证的服务号
- 开启前请确保已正确配置服务器白名单和回调地址
是否开启微信静默登录
- 功能说明: 在微信环境下(如微信内置浏览器)自动静默登录,无需用户手动扫码
- 可选值:
- 开启: 用户在微信中打开网站自动登录
- 关闭: 用户需要手动点击微信登录按钮
- 建议:
- 适合微信公众号菜单跳转场景
- 提供更好的用户体验,减少登录步骤
- 注意: 静默登录需要用户已关注公众号或在微信环境中
公众号基本配置
公众号名称
- 功能说明: 记录当前配置的公众号名称,便于管理识别
- 获取方式: 微信公众号后台 → 设置与开发 → 基本信息
- 示例: "XX科技官方服务号"
- 建议: 填写准确的公众号名称,方便后续维护和管理
AppId
- 功能说明: 微信公众号的开发者ID,用于接口调用身份验证
- 获取方式:
- 登录微信公众平台
- 进入"开发" → "基本配置"
- 查看"开发者ID(AppID)"
- 格式: 以wx开头的18位字符串,如"wx1234567890abcdef"
- 安全建议:
- 妥善保管AppId,不要泄露给无关人员
- 建议定期更换公众号密钥
AppSecret
- 功能说明: 微信公众号的开发者密钥,与AppId配合使用
- 获取方式:
- 在"基本配置"页面点击"重置"或"生成"
- 需要管理员扫码验证
- 仅显示一次,请立即复制保存
- 安全建议:
- AppSecret仅在生成时显示一次,请妥善保存
- 不要在代码中硬编码
- 不要提交到版本控制系统
- 定期(3-6个月)更换密钥
- 如果密钥泄露,立即重置
Token
- 功能说明: 用于验证消息来自微信服务器的自定义令牌
- 设置方式:
- 在系统中设置任意字符串(如"mytoken123")
- 将同样的Token填入微信公众号后台"服务器配置"
- 系统会通过此Token验证消息的合法性
- 建议:
- 使用字母数字组合,长度建议3-32个字符
- 不要使用特殊符号
- Token可以任意设置,但要保证系统配置和公众号后台一致
第三方代理服务配置(可选)
微信开放平台 URL
- 功能说明: 用于网页授权的微信开放平台地址
- 默认值:
https://open.weixin.qq.com - 使用场景:
- 服务器无法直接访问微信API
- 需要通过内部网关访问外网
- 使用第三方代理服务
- 配置示例:
http://your-proxy.com/open或留空使用默认值 - 建议: 大多数情况下无需配置,仅在特殊网络环境下使用
微信 API 基础 URL
- 功能说明: 所有微信API调用的基础地址
- 默认值:
https://api.weixin.qq.com - 使用场景: 与开放平台URL相同,适用于需要代理的场景
- 配置示例:
http://your-proxy.com/api或留空使用默认值
Token 获取 URL
- 功能说明: 获取访问令牌的专用API地址
- 默认值:
https://api.weixin.qq.com/cgi-bin/token - 使用场景: 系统会根据此URL获取access_token
- 配置示例:
http://your-proxy.com/cgi-bin/token或留空使用默认值
微信公众平台 URL
- 功能说明: 用于展示二维码的微信平台地址
- 默认值:
https://mp.weixin.qq.com - 使用场景: 扫码登录时需要显示微信二维码
- 配置示例:
http://your-proxy.com/mp或留空使用默认值
自动回复消息配置
订阅公众号欢迎消息
- 功能说明: 用户关注公众号时自动发送的欢迎语
- 建议内容:
- 表达感谢和欢迎
- 简要介绍公众号功能
- 引导用户如何使用系统
- 示例:
亲爱的用户,欢迎关注XX科技!您可以在这里享受便捷的AI服务,如有问题随时联系我们。 - 提示: 支持文字、表情符号,不支持图片和链接
绑定账号成功回复消息
- 功能说明: 非微信登录用户首次绑定微信成功时发送的消息
- 使用场景: 用户已有账号,通过微信绑定现有账号
- 示例:
恭喜您成功绑定微信账号!现在您可以使用微信快捷登录了。 - 建议: 告知绑定成功,说明后续使用方式
绑定账号失败回复消息
- 功能说明: 微信绑定失败时发送的错误提示
- 常见失败原因:
- 该微信已被其他账号绑定
- 账号信息不匹配
- 网络或系统错误
- 示例:
抱歉,绑定失败。该微信已绑定其他账号,如需帮助请联系客服。 - 建议: 明确说明失败原因,提供解决方案
扫码登录回复消息
- 功能说明: 用户扫码登录成功后自动发送的确认消息
- 示例:
登录成功!您正在使用XX科技AI服务,祝您使用愉快! - 建议: 简洁明了,让用户知道登录已成功
自定义回复的默认信息
- 功能说明: 当用户发送的消息不在预设自动回复列表时的兜底回复
- 作用: 处理用户发送的任意未知消息
- 示例:
您的消息已收到,如有疑问请输入"帮助"查看常见问题,或联系在线客服。 - 建议: 提供友好的提示,引导用户正确使用
配置建议
准备工作
注册微信公众号
- 必须是已认证的服务号(个人订阅号不支持)
- 完成微信认证(需要300元认证费)
- 开通"网页授权"功能
获取公众号信息
- 登录微信公众平台(https://mp.weixin.qq.com)
- 进入"开发" → "基本配置"
- 记录AppID和生成AppSecret
配置服务器地址
- 在"开发" → "基本配置" → "服务器配置"中设置:
- URL:
https://您的域名/api/official/notify - Token: 与系统配置中的Token保持一致
- EncodingAESKey: 随机生成即可
- 消息加密方式: 推荐使用"安全模式"
安全建议
密钥管理
- AppSecret仅在生成时显示一次,请立即复制保存
- 不要将AppSecret提交到代码仓库
- 定期更换AppSecret和Token
- 如果密钥泄露,立即重置
服务器白名单
- 在公众号后台设置IP白名单
- 将服务器IP地址添加到白名单
- 避免因IP未授权导致API调用失败
回调地址配置
- 在"开发" → "接口权限" → "网页授权"中设置授权回调域名
- 填写您的域名(不要带http://或https😕/)
- 确保域名已备案并配置正确的SSL证书
配置流程建议
配置公众号基本信息
- 填写公众号名称
- 填写AppId和AppSecret
- 设置Token
配置微信公众平台服务器
- 在微信后台填写服务器URL和Token
- 点击"提交"验证服务器配置
- 确保系统服务器能正常接收微信消息
配置自动回复消息
- 设置欢迎消息
- 配置绑定成功/失败消息
- 设置扫码登录消息
- 配置默认自动回复
启用微信登录功能
- 先测试各项配置是否正确
- 确认服务器通信正常
- 最后开启微信登录开关
- 测试扫码登录流程
测试验证
- 使用测试账号关注公众号
- 测试扫码登录功能
- 验证自动回复消息
- 确认所有功能正常
常见问题
Q: 个人订阅号可以使用微信登录功能吗? A: 不可以。微信登录功能需要使用已认证的服务号,个人订阅号没有相关权限。如果需要使用此功能,请注册服务号并完成微信认证。
Q: 配置后扫码无法登录怎么办? A: 请检查:
- 确认是已认证的服务号,不是订阅号
- 检查AppId和AppSecret是否填写正确
- 确认服务器URL配置正确且可访问
- 查看系统日志是否有报错信息
- 确认"网页授权"功能已开通
Q: 服务器配置验证失败? A: 排查步骤:
- 确认服务器URL填写正确,格式为:
https://域名/api/official/notify - 检查Token是否与系统配置一致
- 确认服务器可以正常访问
- 检查服务器防火墙是否放行80/443端口
- 查看系统日志确认是否收到微信的验证请求
Q: 什么是UnionID?为什么要更新UnionID? A: UnionID说明:
- 同一用户在同一开放平台下的所有应用中,UnionID是唯一的
- 用于实现跨应用账号统一
- 如果公众号绑定了微信开放平台,可以获取UnionID
- 点击"更新UnionID"按钮会批量获取已绑定微信用户的UnionID
Q: 静默登录是什么意思? A: 静默登录说明:
- 用户在微信环境中打开网站时自动登录
- 无需手动扫码或点击登录按钮
- 适用于微信公众号菜单跳转场景
- 用户必须有微信环境且已关注或在可登录状态
Q: 第三方代理服务什么时候需要配置? A: 代理服务使用场景:
- 服务器在内网,无法直接访问微信API
- 需要通过特殊的网络网关访问外网
- 使用第三方代理服务加速访问
- 大多数情况下无需配置,仅在特殊网络环境使用
Q: 自动回复消息支持图片和链接吗? A: 当前版本:
- 自动回复仅支持纯文本消息
- 可以使用表情符号
- 不支持图片、图文消息、链接卡片等富媒体内容
- 如果需要更复杂的消息,可以通过二次开发实现
Q: 如何测试微信登录功能? A: 测试步骤:
- 确认配置完成并保存
- 开启微信登录开关
- 在用户端点击"微信登录"
- 使用手机微信扫描二维码
- 关注公众号(如果未关注)
- 确认登录成功并跳转
Q: 一个公众号可以绑定多个系统吗? A: 可以,但需要注意:
- 一个公众号可以配置多个服务器回调URL
- 但只有最后一个配置的URL会生效
- 建议一个公众号只用于一个系统
- 如果需要多系统接入,建议申请多个公众号或使用开放平台
Q: 如何解绑用户的微信? A: 目前系统:
- 用户可以在个人设置中解绑微信
- 管理员可以在用户管理中手动解绑
- 解绑后用户需要重新绑定或使用其他方式登录