微信小程序的js后台只能执行一些简单的逻辑,遇到比较复杂的处理表单数据的功能或者网络功能就需要连接服务器来远程处理,实现方式就是调用小程序的 wx.request() 这一接口。
站在用户的角度思考问题,与客户深入沟通,找到富锦网站设计与富锦网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:做网站、网站制作、企业官网、英文网站、手机端网站、网站推广、域名申请、网络空间、企业邮箱。业务覆盖富锦地区。
request请求 就是基本的HTTP请求,可以携带一些表单数据,交给服务器处理。
在小程序中的写法如下:
采用php作为服务器端语言,通过WAMP等框架可以很容易地搭建环境,服务器主要完成对请求数据的处理以及结果数据的返回。
请求数据的获取非常容易,直接访问相应的超全局数组,对于GET方法而言,通过下面的方式即可:
为了方便小程序端数据的处理,结果数据仍通过json格式返回,具体在php中的简单做法就是
这样返回的json数据就为
其中value1,value2等变量可以设置为多维数组,这样通过json_encode() 函数之后就可以得到相应的嵌套的json数据,从而方便处理。
通过php可以很容易地处理微信小程序的request请求,笔者是由于前一段时间需要进行微信小程序的开发,就研究了一下小程序的逻辑,然后尝试用php进行服务端处理,对于简单的请求处理起来觉得还不错,这篇文章可以作为初次接触微信小程序的一个参考。
第一步:申请域名备案
第二步:购买SSL证书 小程序只认https 部署你的项目
第三步:申请小程序 添加域名
第四步:下载小程序工具(微信web开发工具)
第五步:修改小程序dome 把WXML里面改成web-view src="https://你的地址"/web-view
第六步:需要调用某些api 继续改你的html/php代码
第7步:点击工具上传,微信后台提交审核
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了