微信小程序封装http访问网络库实例代码


Posted in Javascript onMay 24, 2017

微信小程序封装http访问网络库实例代码

之前都是使用LeanCloud为存储,现在用传统API调用时做如下封装

文档出处:https://mp.weixin.qq.com/debug/wxadoc/dev/api/network-request.html

代码如下:

var HOST = 'http://localhost/lendoo/public/index.php/';
// 网站请求接口,统一为post
function post(req) { 
//发起网络请求
 wx.request({
 url: HOST + req.uri, 
 data: req.param, 
 header: {
   "content-type": "application/x-www-form-urlencoded"
 },
 method: 'POST', 
 success: function (res) {
  req.success(res.data)
 }, 
 fail: function (res) {
   console.log(res);
 }
 })
}
// 导出模块
module.exports = { post: post
}

然后前端调用就可以这样做了:

var http = require('../../utils/http.js');
...
 http.post({ 
  uri: http.orderListUri, 
  param: {
   third_session: wx.getStorageSync('third_session')
  },  
   success: function (data) {
   that.setData({
    orderList: data
  });
  }
 });

一般对自己写的接口给自己用的时候,method方法或header都是约定好的,所以不用重复书写。

header: {
   "content-type": "application/x-www-form-urlencoded"
  },
method: 'POST'

而fail回调方法也可以统一处理;进一步地,也可以对success回调里的针对code值进一步判断,特定错误码统一处理,比如跳转登录页面等。

经过上述处理,是不是变得简洁了?

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
jquery+json实现的搜索加分页效果
Mar 31 Javascript
JavaScript更改原始对象valueOf的方法
Mar 19 Javascript
浅谈类似于(function(){}).call()的js语句
Mar 30 Javascript
ionic js 复选框 与普通的 HTML 复选框到底有没区别
Jun 06 Javascript
Vue.js开发环境搭建
Nov 10 Javascript
webpack使用 babel-loader 转换 ES6代码示例
Aug 21 Javascript
js使用generator函数同步执行ajax任务
Sep 05 Javascript
解决使用vue.js路由后失效的问题
Mar 17 Javascript
深入理解Vue.js轻量高效的前端组件化方案
Dec 10 Javascript
Next.js实现react服务器端渲染的方法示例
Jan 06 Javascript
js JSON.stringify()基础详解
Jun 19 Javascript
vue+vuex+axios从后台获取数据存入vuex,组件之间共享数据操作
Jul 31 Javascript
Bootstrap下拉菜单更改为悬停(hover)触发的方法
May 24 #Javascript
微信小程序 生命周期函数详解
May 24 #Javascript
很棒的vue弹窗组件
May 24 #Javascript
详解Vue使用命令行搭建单页面应用
May 24 #Javascript
详解Vue 非父子组件通信方法(非Vuex)
May 24 #Javascript
微信小程序 支付功能(前端)的实现
May 24 #Javascript
微信小程序 选项卡的简单实例
May 24 #Javascript
You might like
php下实现一个阿拉伯数字转中文数字的函数
2008/07/10 PHP
php Static关键字实用方法
2010/06/04 PHP
php代码运行时间查看类代码分享
2011/08/06 PHP
CI框架中zip类应用示例
2014/06/17 PHP
laravel 查询数据库获取结果实现判断是否为空
2019/10/24 PHP
jQuery图片滚动图片的效果(另类实现)
2013/06/02 Javascript
jquery验证手机号码、邮箱格式是否正确示例代码
2013/07/28 Javascript
JS 打印功能代码可实现打印预览、打印设置等
2014/10/31 Javascript
jQuery中:radio选择器用法实例
2015/01/03 Javascript
Javascript数组操作函数总结
2015/02/05 Javascript
jQuery仿360导航页图标拖动排序效果代码分享
2015/08/24 Javascript
D3.js封装文本实现自动换行和旋转平移等功能
2016/10/14 Javascript
Vue.js使用v-show和v-if的注意事项
2016/12/13 Javascript
js仿拉勾网首页穿墙广告效果
2017/03/08 Javascript
Vue.js结合bootstrap前端实现分页和排序效果
2018/12/29 Javascript
JS highcharts实现动态曲线代码示例
2020/10/16 Javascript
简单讲解Python中的闭包
2015/08/11 Python
Python实现查询某个目录下修改时间最新的文件示例
2018/08/29 Python
浅谈python连续赋值可能引发的错误
2018/11/10 Python
Python中最好用的命令行参数解析工具(argparse)
2019/08/23 Python
利用python3 的pygame模块实现塔防游戏
2019/12/30 Python
python利用os模块编写文件复制功能——copy()函数用法
2020/07/13 Python
Python将QQ聊天记录生成词云的示例代码
2021/02/10 Python
巴西葡萄酒销售网站:Wine.com.br
2017/11/07 全球购物
全球最大的在线旅游公司:Expedia
2017/11/16 全球购物
天游软件面试
2013/11/23 面试题
说说在weblogic中开发消息Bean时的persistent与non-persisten的差别
2013/04/07 面试题
数控个人求职信范文
2014/02/03 职场文书
广告创意求职信
2014/03/17 职场文书
学生抄作业检讨书(2篇)
2014/10/17 职场文书
幼儿园感谢信
2015/01/21 职场文书
2015年测量员工作总结
2015/05/23 职场文书
2015年学校办公室主任工作总结
2015/07/20 职场文书
酒吧七夕情人节宣传语
2015/11/24 职场文书
电力企业职工培训心得体会
2016/01/11 职场文书
Redis基本数据类型哈希Hash常用操作命令
2022/06/01 Redis