我们知道,一个项目开发时,有许多环境,如:开发环境,测试环境,预生产环境,生成环境,若项目上线时要每个接口的域名改一遍,这是效率很低的做法。另外,许多接口都有前缀,例如 /api/  /wxapi/  /adorApi/等,所以封装请求以提高效率是很有必要的。

我封装的一个request如下,部分代码参考网络,我通常会将此文件放在public文件夹中:

var DOMAIN ="https://dev.abc.com"
var requestHandler = {
params: {},
API_URL: '',
token: '',
header: {'content-type': 'application/json'} ,
success: function (res) {
// success
},
fail: function () {
// fail
},
} //GET请求
function GET(requestHandler) {
request('GET', requestHandler)
}
//POST请求
function POST(requestHandler) {
request('POST', requestHandler)
} function request(method, requestHandler) {
//注意:可以对params加密等处理
var params = requestHandler.params;
var API_URL = requestHandler.API_URL;
wx.request({
url: DOMAIN+"/api/" + API_URL,
data: params,
method: method,
header: requestHandler.header, // 设置请求的 header
success: function (res) {
//注意:可以对参数解密等处理 requestHandler.success(res.data) },
fail: function () {
requestHandler.fail()
},
complete: function () {
// complete
}
})
} module.exports = {
GET: GET,
POST: POST,
DOMAIN: DOMAIN
}

最后导出DOMAIN是为了方便引用网络图片路径,要不然wxml中很长一条路径看得眼花!

小程序request封装的更多相关文章

  1. 微信小程序request(ajax)接口请求封装

    微信小程序request(ajax)接口请求封装 最近在进行小程序的编写,需要调用后端接口,经常要用到wx.request方法,所以就自己封装了一下,简化一下代码,如果能给大家提供帮助更好,在封装的时 ...

  2. 微信小程序之封装http请求

    下面将封装http请求服务部分的服务以及引用部分 // 本服务用于封装请求 // 返回的是一个promisepromise var sendRrquest = function (url, metho ...

  3. 微信小程序:封装全局的promise异步调用方法

    微信小程序:封装全局的promise异步调用方法 一:封装 function POST(url, params) { let promise = new Promise(function (resol ...

  4. 微信小程序简单封装图片上传组件

    微信小程序简单封装图片上传组件 希望自己 "day day up" -----小陶 我从哪里来 在写小程序的时候需要上传图片,个人觉得官方提供的 Uploader 组件不是太好用, ...

  5. 微信小程序 request请求封装

    在utils文件夹新建文件utils.js,封装代码如下: 小程序升级后内部不自带Promise方法,需外部引入Promise方法   var sendRequest = function (url, ...

  6. 微信小程序接口封装、原生接口封装、request、promise封装

    相信大家在做微信小程序的时候会有很多地方需要调用接口,就和pc以及手机端一样,多个页面多次调用会有很多状态,那为了节省大家的开发时间就会需要给请求的接口做一些简单封装,便于开发,在这里我用了两个js, ...

  7. 微信小程序request请求的封装

    目录 1,前言 2,实现思路 3,实现过程 3.1,request的封装 3.2,api的封装 4,实际使用 1,前言 在开发微信小程序的过程中,避免不了和服务端请求数据,微信小程序给我们提供了wx. ...

  8. 微信小程序网络封装-简单高效

    废话引言 小程序虽然出世很久了,但一直没怎么接触到小程序开发.吉他兴趣班老师想弄一个小程序发布课程信息和打卡功能,作为IT一员就自愿加入了这个小程序开发小组中.虽然小程序面向的是前端工程师,但作为移动 ...

  9. 小程序重新封装打印函数console.log

    习惯性使用console.log打印获取到的数据,信息等,然后上星期大佬看见了说怎么那么多打印信息出来,线上那个也是吗?问我能不能线上的就不打印出来? 我就说那就封装一个打印函数呗. 重写一个没问题, ...

随机推荐

  1. 使用IIS调试ASP.NET网站程序

    在实际的开发当中,相信很多的开发者在开发调试ASP.NET网站时候都是直接通过Visual Studio工具的编译运行来调试的. 一般情况下,这种调试方式也不会有多少问题,但有时候我们会发现这样的一个 ...

  2. C#中MessageBox.Show问题(让提示窗口不显示在任务栏中)

    在winform中让MessageBox.Show显示的窗口不显示在任务栏中:第一个参数很明显是你要显示的内容   类型是string 语法Visual Basic(声明) Public Shared ...

  3. 接触Java23天

    根据老师的要求写了一段然后在评讲的时候在修该一些: 猫的: public class Cat extends Animal{ public void methodCat(){ System.out.p ...

  4. 文件权限解释rwx

    linux文件权限 r 读w 写x (execute)执行 rwxrw-r-- 解释:rwx文件所有者对该文件有读写执行的权限:rw- 组内用户对该文件有读写的权限:r-- 其他非本组用户对该文件具有 ...

  5. canvas-a13prototype.html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. K8S 部署 ingress-nginx (一) 原理及搭建

    Kubernetes 暴露服务的有三种方式,分别为 LoadBlancer Service.NodePort Service.Ingress.官网对 Ingress 的定义为管理对外服务到集群内服务之 ...

  7. Android Dialog对话框

    Dialog的基本方法 //创建Dialog AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); //设 ...

  8. 使用fiddler抓包手机请求数据

    1.启动Fiddler,打开菜单栏中的 Tools > Fiddler Options,打开“Fiddler Options”对话框. 2.在Fiddler Options”对话框切换到“Con ...

  9. Maven和Solr简单总结

    一.1.Maven介绍 Maven是一个项目管理工具,Maven通过POM项目对象模型,对象项目进行管理,通过一个配置文件(xml文件)进行项目的管理.对象项目的声明周期中每个阶段进行管理(清理,编译 ...

  10. elasticsearch及head插件安装与配置

    1. 环境软件版本说明 系统:ubuntu14.04.1 JDK:1.8 elasticsearch:5.5.2 node:9.11.1 elasticsearch:5.X 2. 环境软件下载说明 1 ...