微信小程序封装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 相关文章推荐
js实现在字符串中提取数字
Nov 05 Javascript
jQuery实现的左右移动焦点图效果
Jan 14 Javascript
javascript每日必学之条件分支
Feb 17 Javascript
jquery跟随屏幕滚动效果的实现代码
Apr 13 Javascript
深入理解jQuery之事件移除
Jun 02 Javascript
AngularJS动态生成div的ID源码解析
Aug 29 Javascript
JS基于面向对象实现的拖拽功能示例
Dec 20 Javascript
javascript解析ajax返回的xml和json格式数据实例详解
Jan 05 Javascript
react native基于FlatList下拉刷新上拉加载实现代码示例
Sep 30 Javascript
vue-cli3.0+element-ui上传组件el-upload的使用
Dec 03 Javascript
Vue基本使用之对象提供的属性功能
Apr 30 Javascript
uniapp微信小程序:key失效的解决方法
Jan 20 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批量缩放图片的代码[ini参数控制]
2011/02/11 PHP
PHP文件上传主要代码讲解
2013/09/30 PHP
PHP的error_reporting错误级别变量对照表
2014/07/08 PHP
PHP连接access数据库
2015/03/27 PHP
PHP工程师VIM配置分享
2015/12/15 PHP
PHP连接MySQL数据库三种实现方法
2020/12/10 PHP
动态刷新 dorado树的js代码
2009/06/12 Javascript
基于Jquery实现表格动态分页实现代码
2011/06/21 Javascript
JS判断字符串长度的5个方法(区分中文和英文)
2014/03/18 Javascript
jQuery制作的别致导航有阴影背景高亮模式窗口
2014/04/15 Javascript
JS 全屏和退出全屏详解及实例代码
2016/11/07 Javascript
在一个页面重复使用一个js函数的方法详解
2016/12/26 Javascript
Vue的事件响应式进度条组件实例详解
2018/02/04 Javascript
关于JavaScript中高阶函数的魅力详解
2018/09/07 Javascript
微信小程序页面滚动到指定位置代码实例
2019/09/07 Javascript
VUE项目初建和常见问题总结
2019/09/12 Javascript
Vue快速实现通用表单验证的示例代码
2020/01/09 Javascript
python在windows下实现备份程序实例
2014/07/04 Python
Django1.7+python 2.78+pycharm配置mysql数据库
2016/10/09 Python
Python 装饰器深入理解
2017/03/16 Python
Python Scapy随心所欲研究TCP协议栈
2018/11/20 Python
Mac下Anaconda的安装和使用教程
2018/11/29 Python
Python3基础教程之递归函数简单示例
2019/06/07 Python
Django打印出在数据库中执行的语句问题
2019/07/25 Python
弄清Pytorch显存的分配机制
2020/12/10 Python
英国在线花园中心:You Garden
2018/06/03 全球购物
校园摄影活动策划方案
2014/02/05 职场文书
社会学专业求职信
2014/07/17 职场文书
开服装店计划书
2014/08/15 职场文书
迎国庆演讲稿
2014/09/05 职场文书
财务工作犯错检讨书
2014/10/07 职场文书
2014年保卫工作总结
2014/12/05 职场文书
学生考试舞弊检讨书
2015/01/01 职场文书
2016年大学生党员公开承诺书
2016/03/24 职场文书
浅谈node.js中间件有哪些类型
2021/04/29 Javascript
Python包argparse模块常用方法
2021/06/04 Python