网站集成微信登录Api接口,所踩的坑

简介: 本文总结微信登录接口开发的两大场景(微信内H5与PC端扫码)及配置要点:公众号平台配移动端二级域名(如mobile.domain.com),开放平台配PC端一级域名(如domain.com);强调redirect_uri须带http://且URL编码,避免常见报错。

最近在制作微信登录接口时候踩了才少坑,下面做一个笔记,接入之前,首先要理解使用微信登录的常有的两种应用场景:

场景1、只限于在微信客户端打开的网页应用,比如在公众号菜单点击,直接打开某个页面;或在微信消息列表直接给好友发送一个网页的URL,用户收到直接点击URL直接打开页面。

场景2、用户在 PC 电脑 浏览器 打开页面,页面呈现一个二维码,用户使用手机微信扫一扫,确认登录后,网页自动跳转到登录后的页面。

针对以上两种场景,需要注意的是,移动端和PC端所请求的页面URL域名可能不一样,因为根据PC端和移动端屏幕的特性,网页开发者需要针对不同的客户端开发显示不同的view,甚至还分开部署在不同的域名下。

比如,PC端版本部署在一级域名下http://www.domain.com;移动端版本部署在二级域名下http://mobile.domain.com。(当然,其实你只需要申请、备案一级域名domain.com即可,二级域名(可多个)是你自行在 服务端 分配,这方面的知识请问度娘)

理解了这些,接下来的首要工作是在微信公众号、微信开放平台各自配置网页授权URL,你可能会问:“为什么要在两个地方配置不同的URL?”,这是因为上面所说的两种不同场景和不同场景部署到了不同的域名下(一级、二级)。

配置操作如下:

微信公众号平台。登录后,开发》接口权限》网页授权-修改

在下面找到网页授权域名,点击设置

踩坑1:

只需填写域名,不需要http://,假如 手机端访问 的域名是二级域名,只需填写:mobile.domain.com

微信开放平台。登录》管理中心》网站应用(如果没有,需先创建,需要几天的审核时间),

点击查看》应用详情,在下面有个授权回调域,点击修改。

这里配置的是PC端访问的域名,不需要http://,假如是一级域名,只需输入:domain.com

以上配置过程,描述需注意的细节就是坑2;配置好后,打开网页,很可能提示以下错误:

踩坑2:

因为你在代码里给参数 redirect_uri 赋值错误,值一定要带上http://,然后还需要对URL编码格式,比如URL.encode("http://domain.com")。这里不需要加www.

相关文章
Linux 数据库 Python
690 0
|
Java 数据库
Apollo公共类型的Namespace配置需要进行关联才能用吗?
其实,这个问题在强哥看来应该有稍微深入了解Apollo的使用者应该都能回答的上来。 不过也是前些天,刚好看到公司新来的实习生在找Apollo配置时抓耳挠腮,了解情况之后,我发现,原来这个问题确实有许多人容易弄混。所以,强哥就在这里也简单科普一下。
Apollo公共类型的Namespace配置需要进行关联才能用吗?
|
2月前
|
缓存 监控 小程序
小程序发版总翻车?灰度发布、实时监控与快速回滚的落地设计
小程序发版最怕三件事:全量发布直接崩、出问题回滚慢、用户手机里一直是旧版本。本文给一套发版流程设计:体验版到提审到灰度再到全量的关卡划分、灰度比例与自动放量、监控卡点与快速回滚、版本号与缓存更新策略,附发版检查清单与配置表。适用于小程序/轻应用产品的版本发布管理。
|
8月前
|
人工智能 自然语言处理 安全
OpenClaw部署安装集成QQ:阿里云轻量服务器新手0基础,成功部署教程分享
本文为阿里云轻量服务器新手提供OpenClaw零基础部署教程,详解如何一键部署、配置百炼API Key(推荐Coding Plan套餐),并集成QQ机器人,实现自然语言交互。含计费说明(月付9.9元起+模型Token费用)与安全配置要点。(238字)
|
7月前
|
存储 安全 API
RFC 9700 — OAuth 2.0 安全最佳实践学习
本文详解OAuth 2.0安全演进与RFC 9700最佳实践,涵盖OAuth诞生背景、2.0框架确立、RFC 6819威胁模型到RFC 9700(2025年1月发布)的8年打磨历程,并系统梳理十大核心安全要求,如禁用密码模式、强制PKCE、精确重定向URI匹配等。
847 6
|
8月前
|
SQL 安全 关系型数据库
postgressql提示sorry, too many clients的解决办法
本地测试PgSQL集群时频现“too many clients”错误,主因是应用端连接池(各设100)叠加超出了PostgreSQL的max_connections限制(默认100)。PgSQL不会自动回收空闲连接,需靠连接池或超时机制管理。附实用命令:SHOW max_connections;SELECT count(*) FROM pg_stat_activity;SHOW port;及OS级ulimit和端口范围检查。
511 3
|
11月前
|
数据管理 开发者
Pageadmin低代码平台的智能表单模块如何实现数据联动
本文以制造行业工单场景为例,介绍 PageAdmin 低代码平台智能表单的数据联动实现:管理员进入相关表单配置界面,为工单表单关联客户列表数据源并匹配对应字段,选客户后自动填充名称、地址,高效减少手工录入失误。
382 3
vllm+vllm-ascend本地部署QwQ-32B
本指南介绍如何下载、安装和启动基于Ascend的vLLM模型。首先,可通过华为镜像或Hugging Face下载预训练模型;其次,安装vllm-ascend,支持通过基础镜像(如`quay.io/ascend/vllm-ascend:v0.7.3-dev`)或源码编译方式完成;最后,使用OpenAI兼容接口启动模型,例如运行`vllm serve`命令,设置模型路径、并行规模等参数。适用于大模型推理场景,需注意显存需求(如QwQ-32B需70G以上)。
5530 17
|
11月前
|
C++
模型评估
模型评估涵盖能力、对齐与效率三大维度,包括语言理解、知识问答、推理代码等能力测试,以及有用性、无害性、诚实性对齐评估,辅以延迟、吞吐量等效率指标。常用MMLU、C-Eval、GSM8K等基准,结合Hugging Face工具实现自动化评估,面试关注幻觉检测、指标设计与人工协同等关键问题。(239字)
386 0

热门文章

最新文章