船说 CMS 支持微信登录吗

juming
juming 初级会员超兽战士
发布于 2026-10-08 19:36 ·1 浏览 ·0 回复

学完这篇,你能搞清自己的船说CMS 到底能不能用微信扫码登录、要走哪条路接入,以及接不上的时候大概卡在哪儿。

第一步:先确认你的版本后台有没有「第三方登录」入口

这一步决定你是「装个插件就行」还是「得自己写代码」,五分钟能出结果。

浏览器打开你的站点后台,通常是 你的域名/admin,用管理员账号登录。登录后看左侧菜单,按顺序点开这几个位置找:

  • 系统 → 插件管理(部分版本叫「应用管理」「扩展管理」)
  • 设置 → 会员设置,往下翻是否有「微信登录」「第三方登录」开关
  • 会员 → 登录设置

找到微信相关的条目,说明你这个版本已经带了;三个地方都没有,就是默认只支持账号密码登录,得靠插件或二次开发补。

注意:不同分支的后台菜单名字差异很大,别只认一个路径。最快的方法是登录后在后台顶部搜索框直接搜「插件」「微信」两个关键词。

第二步:去微信开放平台申请「网站应用」

这一步拿到 AppID 和 AppSecret,没有这两个东西后面全是空谈。

浏览器打开 open.weixin.qq.com,用企业主体的微信号登录,进入 管理中心 → 网站应用 → 创建网站应用。要填的信息:

  • 应用名称:和你网站备案名称保持一致,否则审核容易被拒
  • 应用官网:填你站点首页完整地址,例如 https://www.example.com
  • 授权回调域:只填域名,不要带 http://,也不要带路径,例如 www.example.com

提交后等审核,通常 1-7 个工作日。通过后回到应用详情页,能看到 AppID 和 AppSecret(AppSecret 只显示一次,记得复制保存)。

注意:网站扫码登录必须用开放平台的「网站应用」,公众号后台那个 AppID 是给公众号网页授权用的,两套东西不能混用。另外开放平台网站应用只对企业等组织主体开放,个人主体申请不了,这是最常见的死路。

第三步:在船说CMS 后台填参数并启用

这一步让前台登录页出现微信图标。

回到船说CMS 后台,进入 系统 → 插件管理,找到「微信登录」相关插件,点 安装,安装完点 配置,把上一步的 AppID、AppSecret 分别粘进对应输入框,回调地址一般填 https://你的域名/wechat/callback 或插件说明里写死的地址,保存后把插件状态切到 启用。

然后去前台登录页刷新一下,能看到「微信登录」图标或二维码按钮,就说明链路通了。

注意:如果插件要求的回调地址和你在开放平台填的「授权回调域」对不上,扫码后会直接报「redirect_uri 参数错误」。改完开放平台的域名后,需要重新提交审核才生效。

第四步:没有插件时,自己动手接

船说CMS 基于 .NET Core,二次开发接入的核心就四步。

  1. 拼授权链接跳转:
  2. https://open.weixin.qq.com/connect/qrconnect?appid=你的AppID&redirect_uri=回调地址&response_type=code&scope=snsapi_login&state=随机串#wechat_redirect

  3. 用户扫码后,微信带着 code 跳回你的回调地址
  4. 服务端拿 code 去换令牌:
  5. https://api.weixin.qq.com/sns/oauth2/access_token?appid=..&secret=..&code=..&grant_type=authorization_code

  6. 返回里取 access_token 和 openid,再请求 https://api.weixin.qq.com/sns/userinfo 拿昵称头像,用 openid 去会员表里查或新建账号,写登录 Cookie

注意:code 只能用一次,有效期 5 分钟。刷新页面重放同一个 code 会直接报 40029,调试时别拿浏览器后退键反复试。

第五步:卡住时按这个顺序排查

  • 报「scope 参数错误」→ 参数写成了 snsapi_base 或 snsapi_userinfo,扫码登录必须是 snsapi_login
  • 报「redirect_uri 参数错误」→ 回调域和开放平台配置不一致,或填了带路径的地址
  • 扫码后白屏、没有任何跳转 → 检查服务器是否能访问 api.weixin.qq.com,有些机房出网被限
  • 能拿到 openid 但登录不了 → 多半是会员表写入失败或 Cookie 域配置错了

小结

  • 先说结论:船说CMS 默认多数版本只带账号密码登录,微信登录要靠插件或二次开发,先看后台 系统 → 插件管理 里有没有入口
  • 前置条件是微信开放平台的网站应用,个人主体申请不了,这是硬门槛
  • 授权回调域只填域名,改完要重新审核
  • 扫码登录的 scope 必须写 snsapi_login,code 只能消费一次且 5 分钟内有效
  • 自己接的流程固定四步:跳授权页 → 拿 code → 换 access_token 和 openid → 建账号写登录态
版权声明:本文来自 GJ站长论坛《船说 CMS 支持微信登录吗》
原文链接:https://www.gj0.com/thread-1129.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。

全部回复 0

还没有回复,来抢沙发~