微信小程序 后端接口(thinkphp)

  • 能够发起一个有效的网络请求 wx.request 

  • 能够实现列表页面带参数跳转 ?id=1&aaa=bbb

  • 能够使用Laravel框架的数据迁移和数据填充创建出user表

  • 微信小程序能够发起请求和Laravel以及ThinkPHP进行对接

  • 掌握微信小程序的数据缓存

一、网络请求

RequestTask | 微信开放文档

wx.request(OBJECT)

发起 HTTPS 网络请求,上线时一定要有https服务器,但在本机开发时可以没有https服务器

测试支持的并数请求数5个

HTTPS 证书必须有效 而且是TLS1.2及以上版本

最好要设置一下 app.json中request请求的超时时间

如果是测试环境开发时,可以在小程序官方开发工具中勾选不检查https证书

微信小程序 后端接口(thinkphp)_第1张图片

正式环境,一定需要一个https服务器,同时还需要在小程序官方后台设置有效的域名

微信小程序 后端接口(thinkphp)_第2张图片

微信小程序 后端接口(thinkphp)_第3张图片

1.1 编写后台接口

1.1.1 用户表设计

id,姓名,年龄

安装laravel项目

微信小程序 后端接口(thinkphp)_第4张图片

微信小程序 后端接口(thinkphp)_第5张图片

微信小程序 后端接口(thinkphp)_第6张图片

微信小程序 后端接口(thinkphp)_第7张图片

配置数据库

微信小程序 后端接口(thinkphp)_第8张图片

在根目录下面的.env文件设置数据库相关信息

微信小程序 后端接口(thinkphp)_第9张图片

执行迁移

微信小程序 后端接口(thinkphp)_第10张图片

创建填充文件

微信小程序 后端接口(thinkphp)_第11张图片

在填充文件中引入模型

微信小程序 后端接口(thinkphp)_第12张图片

在模型中添加对应的类限制

微信小程序 后端接口(thinkphp)_第13张图片

在填充文件中定义填充数据代码

微信小程序 后端接口(thinkphp)_第14张图片

调用

微信小程序 后端接口(thinkphp)_第15张图片

执行

php artisan db:seed

1.1.2 用户列表

使用restful规范编写相对应的接口

get 获取资源 获取多个资源或单个资源 200

post 添加资源 201

put 修改资源 201/202

delete 删除资源 204 无响应体

定义get获取资源路由

微信小程序 后端接口(thinkphp)_第16张图片

用户列表分页代码

微信小程序 后端接口(thinkphp)_第17张图片

微信小程序 后端接口(thinkphp)_第18张图片

1.2 发起网络请求

wx.request({
	url,
	method,
	data
})

JS文件

微信小程序 后端接口(thinkphp)_第19张图片

app.json文件设置网络请求超时时间

微信小程序 后端接口(thinkphp)_第20张图片

接收参数的简化写法

微信小程序 后端接口(thinkphp)_第21张图片

完成请求后发现与之前学习的AJax的区别:天生支持跨域

thinkphp框架开发接口

仿laravel框架配置数据库

微信小程序 后端接口(thinkphp)_第22张图片

配置数据库

微信小程序 后端接口(thinkphp)_第23张图片

这样做的好处:

1.上线的时候可以做到无缝切换

2.git上传时会忽略这个文件,上线后可以通过创建这个文件增加数据库连接配置,而不用在上线前更改databases.php文件

开启Thinkphp的路由模式

微信小程序 后端接口(thinkphp)_第24张图片

定义根路由

微信小程序 后端接口(thinkphp)_第25张图片

创建user模型

微信小程序 后端接口(thinkphp)_第26张图片

控制器引入模型查询数据

微信小程序 后端接口(thinkphp)_第27张图片

如果确定项目是左接口开发,返回数据就是JSON格式的数据,可以修改

微信小程序 后端接口(thinkphp)_第28张图片

wxml展示数据

微信小程序 后端接口(thinkphp)_第29张图片

效果

微信小程序 后端接口(thinkphp)_第30张图片

二、数据缓存

每个微信小程序都可以有自己的本地缓存,即对本地缓存进行设置、获取和清理。同一个微信用户,同一个小程序 storage 上限为 10MB

注意: 如果用户储存空间不足,会清空最近最久未使用的小程序的本地缓存(LRU)。我们不建议将关键信息全部缓存起来,以防储存空间不足或用户换设备的情况

小程序的缓存是没有有效期的

2.1 设置缓存

wx.setStorageSync(string key, any data) | 微信开放文档

设置缓存分为同步和异步

wx.setStorage(OBJECT)  异步

wx.setStorageSync(KEY,DATA) 同步

微信小程序 后端接口(thinkphp)_第31张图片

2.2 获取本地缓存数据

获取缓存分为同步和异步

wx.getStorage(OBJECT)  异步

wx.getStorageSync(KEY) 同步

2.3 移除本地缓存

从本地缓存中异步移除指定 key, 分为同步和异步

wx.removeStorage(OBJECT) 异步

wx.removeStorageSync(KEY)  同步

2.4 清除本地缓存 --- 不要用

wx.clearStorage()

wx.clearStorageSync()

微信小程序 后端接口(thinkphp)_第32张图片

微信小程序 后端接口(thinkphp)_第33张图片

微信小程序 后端接口(thinkphp)_第34张图片

微信小程序 后端接口(thinkphp)_第35张图片

微信小程序 后端接口(thinkphp)_第36张图片

你可能感兴趣的:(小程序,Thinkphp5.0,微信小程序,小程序)