大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
微信小程序的js后台只能执行一些简单的逻辑,遇到比较复杂的处理表单数据的功能或者网络功能就需要连接服务器来远程处理,实现方式就是调用小程序的 wx.request() 这一接口。
创新互联是一家专业提供琼中黎族企业网站建设,专注与成都网站制作、网站建设、H5场景定制、小程序制作等业务。10年已为琼中黎族众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。
request请求 就是基本的HTTP请求,可以携带一些表单数据,交给服务器处理。
在小程序中的写法如下:
采用php作为服务器端语言,通过WAMP等框架可以很容易地搭建环境,服务器主要完成对请求数据的处理以及结果数据的返回。
请求数据的获取非常容易,直接访问相应的超全局数组,对于GET方法而言,通过下面的方式即可:
为了方便小程序端数据的处理,结果数据仍通过json格式返回,具体在php中的简单做法就是
这样返回的json数据就为
其中value1,value2等变量可以设置为多维数组,这样通过json_encode() 函数之后就可以得到相应的嵌套的json数据,从而方便处理。
通过php可以很容易地处理微信小程序的request请求,笔者是由于前一段时间需要进行微信小程序的开发,就研究了一下小程序的逻辑,然后尝试用php进行服务端处理,对于简单的请求处理起来觉得还不错,这篇文章可以作为初次接触微信小程序的一个参考。
可以用任何语言或平台(比如JSP、PHP、ASP等)来写后台,只要能接收小程序发送的请求,并按小程序要求的格式返回数据即可。也可以利用腾讯云提供的小程序解决方案很方便地建立一个后台数据处理系统(目前支持Node.js和PHP方式)。
如果你的小程序无需后台提供数据,也可以完全不用后台,直接在小程序内部解决。总之一切看需要。
wx.request({
url: '',
header: {
"Content-Type": "application/x-www-form-urlencoded"
},
method: "POST",
data: { mobile: e.detail.value.mobile, password: e.detail.value.password },
success: function (res) {
if (res.data.status == 0) {
wx.showToast({
title: res.data.info,
icon: 'loading',
duration: 1500
})
} else {
wx.showToast({
title: res.data.info,//这里打印出登录成功
icon: 'success',
duration: 1000
})
}
},
fail: function () {
wx.showToast({
title: '服务器网络错误!',
icon: 'loading',
duration: 1500
})
}
})
这种情况发生在以UTF-8编码格式传输数据的时候,这开头的三个字节叫做BOM(Byte Order Mark,字节顺序标记),小程序接收到php端返回的数据后,把开头的三个字节去掉即可。
更彻底的解决办法是把php文件保存为 不带BOM的UTF-8 文件,这样返回的数据就不带BOM了
如果要想做THINKphp后台只能内嵌了,不过现在的小程序相当的发达,基本上你可以通过微信本身来实现这种功能需求的。