微信小程序可以让用户自己选服务器吗?

2021-05-21 17:06:48 +08:00
 HashV2

现在公司有产品主要功能再 admin 页面,但是有部分功能在 app 端(基本逻辑就是 admin 进行相关的功能配置,app 端点击执行功能),客户有 5-10 个,每个客户都需要在自己的内网机房建服务端,然后开放 app 相关的 api 到公网

因为维护各个版本的安卓 /ios 包比较吃力,想转为微信小程序

逻辑大概是这样:

用户在选择服务器通过认证后可以绑定微信 以后再次打开小程序会自动连接到该服务器

这种模式可行吗?如果不可行的话有没有其它的方案可以解决?

3418 次点击
所在节点    程序员
24 条回复
yitingbai
2021-05-21 17:09:13 +08:00
微信小程序运行期间不可以改服务器地址, 但是你可以这么做, 服务端 api 中转到不同的目标服务器, 切换逻辑在服务端
HashV2
2021-05-21 17:11:40 +08:00
没做过微信小程序开发,但是有前端经验
两个星期能速成不?(这个 app 特别简单,只有登陆页面+列表页,只要对接大概五六个接口即可)
HashV2
2021-05-21 17:14:00 +08:00
@yitingbai #1 就是我需要有一台服务器部署一个应用去专门对接微信然后再分发相关的请求?
shapl
2021-05-21 17:14:12 +08:00
@HashV2 #2 会 vue 的话,用 uniapp 开发上手很快。
shapl
2021-05-21 17:14:57 +08:00
@HashV2 #2 当然页面太简单的话,直接原生写就完事了。
joooooker21
2021-05-21 17:16:42 +08:00
可以用 nginx 做反向代理 , 小程序请求后台接口时带上客户标识即可
yitingbai
2021-05-21 17:16:55 +08:00
@HashV2 肯定要有一台服务器和小程序通讯啊, 如果业务非常简单, 也不必再写一个中转服务端, 直接用 nginx 转发到不同的目标服务器即可,
HashV2
2021-05-21 17:18:57 +08:00
@shapl #4 那可以的 页面超级很简单 我也有 vue 的项目开发经验 现在是想确定方案的可行性
HashV2
2021-05-21 17:21:59 +08:00
@yitingbai #7 了解了 app 部分的业务确实非常简单 中转服务器只需要部署 nginx 的话确实非常可行 因为给的开发周期不是很长 不想再写一个应用去做认证和分发 能在原代码上更新对接一下微信的认证就很好
HashV2
2021-05-21 17:30:39 +08:00
感觉总的来说挺可行的 下班了 周一再回帖
winnerczwx
2021-05-21 18:55:03 +08:00
@yitingbai #1 楼主说是在内网自建服务器, 中转应该是不行的吧
jame
2021-05-21 20:27:08 +08:00
flutter 了解一下
aristolochic
2021-05-21 20:35:57 +08:00
所以……就是 Multi tenant 呗
Web 实现的多租户还是太野了吧,就算有微信的绑定啥的
建议还是加个 API 网关吧。不加网关你的合法域名要加到多长啊,现在客户数量少,以后呢?
ch2
2021-05-21 20:50:54 +08:00
小程序发请求必须域名 https+备案+后台白名单(有个数限制),你这想法一看就不靠谱
Felldeadbird
2021-05-21 21:59:37 +08:00
中转服务器啊。
小程序 发送给 微信小程序管理后台绑定的域名

绑定的域名将数据 转发 给 对应的域名。
TimeRain
2021-05-21 22:46:33 +08:00
直接云开发吧
musi
2021-05-21 22:55:35 +08:00
可以借助云函数做中转,就不必硬上一个中装服务器了
OHyn
2021-05-21 23:21:57 +08:00
如果这些服务都加了白名单,那 ok ;
无非是动态处理一下请求地址的问题。但我记得小程序白名单编辑次数有限制?
所以为了方便,还是自己做个反向代理吧。
no1xsyzy
2021-05-22 00:49:33 +08:00
@winnerczwx 内网倒是可以自己 mitm 自己,就是那个经典的「外网访问则找到公网走路由器端口映射,内网则不经过路由直接访问服务器」的问题。但是客户网络环境是否允许你这么做也是问题。
nekochyan
2021-05-22 14:36:27 +08:00
微信小程序必须用 https 发请求,并且以前是有 20 个白名单限制,不过现在已经取消了 20 个限制了,具体上限是多少就不知道,可以去微信小程序文档看看

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/778410

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX