Python 作为小程序后端的三种实现方法(推荐)

作者:somenzz 时间:2023-03-30 09:26:05 

微信的小程序是一个很不错的体验,简单,上手快,这几天也在学习使用小程序,自己总结了三种用 Python 作为小程序后端的方式,供你参考。

方法一、微信的云托管

优点:不需要购买服务器,不需要域名备案,按使用量计费,DevOps 自动化,安全鉴权,适合没有运维经验的人。

缺点:费用这块,肯定是比自建服务器费用略高的。就像同一车型,自动挡的车比手动挡的车更贵一样。

Python 作为小程序后端的三种实现方法(推荐)

所谓云托管,就是一个 Docker 容器,你只需要弄一个仓库,可以 github, gitlab, gitee 中的任意一个建立仓库,写好 Dockerfile,上传到云托管,云托管会自动构建容器镜像并运行,运行容器的方式都是可以自定义的。部署完成后,我们会得到一个默认域名地址,就是服务对外提供服务的入口,你可以将其按照正常的服务来调用访问,也可以绑定自己的域名。

小程序中,可以这样访问容器服务:

// 确认已经在 onLaunch 中调用过 wx.cloud.init 初始化环境(任意环境均可,可以填空)
const res = await wx.cloud.callContainer({
 config: {
   env: '填入云环境ID', // 微信云托管的环境ID
 },
 path: '/xxx', // 填入业务自定义路径和参数,根目录,就是 /
 method: 'POST', // 按照自己的业务开发,选择对应的方法
 header: {
   'X-WX-SERVICE': 'xxx', // xxx中填入服务名称(微信云托管 - 服务管理 - 服务列表 - 服务名称),在上述实践中是 demo
 }
 // 其余参数同 wx.request
});
console.log(res);

有了容器,后端用什么编程语言都是可以的,就看自己擅长啥了, Python 绝对没问题,而且官方有 Django 模版,一键部署。

方法二、微信的云函数中转

优点:不需要域名备案,有一定的免费额度。

缺点:自己配置服务器

所谓云函数,就是运行在腾讯云端的 Node.js 函数,只有计算逻辑,可以无缝访问云数据库进行数据存取。

小程序端这样调用云函数:

wx.cloud.callFunction({
 // 要调用的云函数名称
 name: 'dailyexam',
 // 传递给云函数的event参数
 data: {
   x: 1,
   y: 2,
 }
}).then(res => {
 // output: res.result === 3
}).catch(err => {
 // handle error
})

Node.js 函数其实就是异步的 javascript 函数,在云函数里面,我们可以请求自建服务器上的服务,这样域名就不需要备案了,比如下面的代码中,域名 somenzz.cn 是没有备案的。

云函数端这样调用自建 API 服务:

Python 作为小程序后端的三种实现方法(推荐)

免费额度通常很少,数据库日读取次数不能超过 500,写次数不能超过 300。

Python 作为小程序后端的三种实现方法(推荐)

因为自建服务,自然可以用 Python 开发。

方法三:自建服务器,备案域名

优点:省钱,访问量越大越省钱。

缺点:需要备案域名。

不使用云函数和云托管,那就只能在小程序端使用 wx.request 函数来请求自建服务:

wx.request({
 url: 'example.php', //仅为示例,并非真实的接口地址
 data: {
   x: '',
   y: ''
 },
 header: {
   'content-type': 'application/json' // 默认值
 },
 success (res) {
   console.log(res.data)
 }
})

而 wx.request 函数有使用限制,如下:

Python 作为小程序后端的三种实现方法(推荐)

通常你需要国内的服务器,然后备案域名,而备案,通常会劝退很大一部分开发者。

因为自建服务器,当然可以用 Python 开发啦。

最后的话

本文分享了三种 Python 作为小程序后端的实施方法,而域名备案是很慢的,介于此,我推荐前两种方法,感谢各位朋友支持。

参考资料

[1]

微信的云托管: https://cloud.weixin.qq.com/cloudrun?utm_source=idecloudconsole

[2]

微信的云函数中转: https://developers.weixin.qq.com/miniprogram/dev/wxcloud/basis/capabilities.html#云函数

来源:https://blog.csdn.net/somenzz/article/details/124486955

标签:Python,小程序,后端
0
投稿

猜你喜欢

  • Golang异常处理之defer,panic,recover的使用详解

    2023-08-06 14:20:09
  • link 和 style 元素在 HTML 文档中的位置

    2008-06-02 13:56:00
  • SQL语句执行顺序图文介绍

    2023-07-04 22:59:27
  • python with (as)语句实例详解

    2023-04-12 04:15:09
  • MySQL数据库事务隔离级别详解

    2024-01-26 12:34:03
  • MySQL中数据导入恢复的简单教程

    2024-01-20 15:28:04
  • sql server 带列名导出至excel

    2008-11-25 11:07:00
  • ACCESS入门教程:窗口和菜单的使用

    2008-01-03 20:15:00
  • Python常用标准库之os模块功能

    2022-03-03 03:49:59
  • 过期软件破解办法实例详解

    2024-05-02 17:38:03
  • 浅析Go语言编程当中映射和方法的基本使用

    2024-04-28 09:13:16
  • 一文带你梳理Python的中级知识

    2022-03-13 14:36:29
  • python实现的B站直播录制工具

    2023-05-29 00:51:48
  • python脚本使用阿里云slb对恶意攻击进行封堵的实现

    2021-11-20 16:32:07
  • MYSQL中 char 和 varchar的区别

    2024-01-25 22:22:52
  • MySQL主从同步原理及应用

    2024-01-18 07:42:24
  • Golang迭代如何在Go中循环数据结构使用详解

    2024-02-08 04:23:11
  • python 将dicom图片转换成jpg图片的实例

    2023-08-24 11:12:27
  • python读取配置文件方式(ini、yaml、xml)

    2022-10-12 05:07:29
  • Python中的布尔类型bool

    2023-08-11 13:10:00
  • asp之家 网络编程 m.aspxhome.com