如何创建的是一个不需要后端服务器支持的微信小程序,那么与Python就没什么关系了。如果对HTML+CSS+JS有些许了解,那么上手微信小程序就不难,多熟悉微信小程序提供的API。
如果需要后端传送接收处理数据,那么后端就还有Python的勇武之地,可以用Python的Web框架写一个后端接口供小程序进行调用。
我闲着没事,就用微信小程序结合Django写了一个简单的微信小程序:【票圈神器】
Django提供了三个接口,分别返回首页列表数据、详情页数据、接收微信小程序提交的表单、调用PIL模块生成一个图片并返回。
问:微信小程序图片上传功能,一次只能上传一张图片,批量上传有没有好的实现办法,让用户觉得时间短,不影响体验?
答:在微信小程序的API中,有一个wx.chooseImage()接口,其最多可以选择9张图片,这个接口调用成功会返回图片的本地文件路径列表,参数值为tempFilePaths。在获取到这个本地图片列表之后,再对wx.uploadFile()方法进行批量调用就可以一次性上传多张图片了。
问:请问使用Python给小程序做后端服务有哪些特色亮点(和JAVA、nodejs比较有哪些优势)?
答:众多周知,Python依赖其丰富的第三方库在各个领域都有很深的应用。使用Python做为小程序的后台,可以充分利用Python的生态圈,从Web服务,到数据爬取,到机器学习的模型调用等都可以无缝结合使用。比如,我们在小程序前端页面,调用相机拍一个物品的照片,Python后台的Web框架接受到图片,将其进行数据预处理转换之后,传给使用Python的机器学习库训练好的图像识别模型,最后得到图片的分类。
问:在小程序中的支付,用户是否可实时提现,有没有手续费?
答:小程序中的支付调用的也是微信支付,其可以实时提现,同时手续费也是微信支付规定的0.6%。
问:小程序入门难吗?
答:小程序涉及到小程序前端页面和逻辑的开发以及后端服务接口的开发。后端服务接口的开发,与其他的Web应用的后端开发无异。而小程序的前端页面开发,有一些html、css和js基础会好很多,像我对前端的知识也不是很了解,但是基本了解了小程序的原理和结构后,也能入门做出一个简单的小程序来。
问:如果是windows服务器的话,Django用什么版本最好?
答: Django目前官方并行了两个版本:1.11和2.0,其中2.0的版本于今年年初发布,其有一些新的特性,比如URL的定义等。1.11版本将会支持到2020年,而2.0版本将会支持到2019年初,其后会由2.1和2.2版本接替。可以看一下Django官方的版本支持图:
目前还是推荐1.11版本。
问:Django怎么操纵数据库?
答:默认情况下,Django都是使用自己的数据模型及其定义的ORM(对象关系映射),来定义和操纵数据库。当然也可以使用原生的SQL语句。
问:如想试图完整搭建展示图片,文字类似的一个小程序,功能不必非常复杂,具体应分几步,如何实际操作完成?
答:假设是想做一个图片或文章的小程序,那么有一个首页展示最新图片或文章,一个列表里展示分类的图片或列表,一个详情页是看具体的图片或文章。首页和列表页都可以直接链接到详情页。在小程序中创建这三个页面。然后后端数据库的话,如果只是展示,不做其他的统计和用户数据,那么一个分类表和一个文章或图片表就OK了。
问:小程序如何放在阿里云的服务器上,曾经尝试开发小程序,但是开发软件上面只有显示腾讯云怎么办?
答:小程序的后端服务器放在哪里都没有关系,小程序只是需要绑定的服务器域名提供的是https的请求,不能是http的。
问:小程序除官网外,还有什么好用的工具IDE?
答:官方之外的IDE倒是没使用过。微信官方提供的开发者工具,个人感觉功能算是比较全面了,能够提供很好的预览的调试信息。
问:OCR文字识别这种小程序,是如何实现的?讲一下思路可以吗?
答: OCR文字识别还是依靠后端服务器来实现,后端服务器调用一些接口或API识别之后,再将内容返回给小程序。比如百度、阿里或腾讯提供的一些智能接口。或者是使用开源模块自己实现,比如Python下有一个pytesseract模块,可以对文字进行OCR识别和训练。
问:小程序做视频播放怎么样,小程序容易被破解吗?
答:小程序本身提供了video组件来支持视频的播放,其中有很多可控制的参数,如下图:
从推广角度来看,依托于微信社交关系链,小程序中的视频也有传播的便利。
问:用Python做后台服务,若访问量大,性能如何?另外有上传图片功能,安全性如何考虑的?
答: Instagram的后台就是用的Django实现的,在去年,其在Python的一个开发者会议上,分享了是如何使用Python支撑7亿的月活用户的:
图片上传的之后,首先是通过后端服务器从请求中获取的文件流,然后重新写入一个文件中,在这个过程中可以对文件流进行验证和审核。
问:搜索小程序时,有个附近小程序,那请问下要这个附近是根据什么定位的?
答:微信小程序后台有一个附近的小程序功能:如下图:
问:小程序可以支持对使用者进行身份的验证吗?
答:小程序可以通过用户授权获取到用户的微信信息,但是进行身份验证,则不能直接进行。
问:微信小程序是如何验证和统计使用这个小程序的用户的,用Django的能实现吗?
答:在小程序中可以静默回去到用户的openid,其表示用户在小程序中的唯一id,可以使用Django在数据模型中保存这个openid的信息。对其进行基于openid的验证。
问:建议课程介绍:windows Server 2012平台下,Django框架,使每次访问都对来访人员的身份和权限进行识别的最简办法是哪一种?Django框架,开发小程序用哪一种工具最简便?windows Server 2012平台下,Django框架,开发小程序用哪一种工具最简便?
答: Django框架下的用户身份识别可以通过用户模型来进行,或者是获取到request请求头中的信息,对浏览器、IP等信息进行识别,这里没有具体指那种权限识别,所以无法进行详细的回答。另外,对于小程序前端的页面和逻辑,还是得使用微信官方提供的微信开发工具。
问:开发微信小程序必须联机云服务器吗?在练习阶段能用单机练习吗?
答:如果需要使用到后端网络请求服务,那么服务器是必须的。但是如果仅仅调用小程序的本机的接口(系统信息、网络状态、加速度计、罗盘打电话等功能),那么是可以不用服务器的。
问:Django用来做restful api推荐用rest framework吗?
答: rest_framework可以说是Django中最经典的restful框架,但是如果项目不大,获取只是简单的返回接口数据,那么可以自己写或者用Django simple serializer,这一个国人写的简单的restful库。
问:大一学生,自学了Python,用Django做过简单页面,还需要学习哪些东西才能会做咱们的案例?
答:本次案例所涉及的Django很简单,所以后端完全没问题,前端的话了解html、css和js基础,然后在了解一下wxml、wxss的特有结构,最后熟悉一下小程序的几个api接口就OK了。
评论