小程序request封装
我们知道,一个项目开发时,有许多环境,如:开发环境,测试环境,预生产环境,生成环境,若项目上线时要每个接口的域名改一遍,这是效率很低的做法。另外,许多接口都有前缀,例如 /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封装的更多相关文章
- 微信小程序request(ajax)接口请求封装
微信小程序request(ajax)接口请求封装 最近在进行小程序的编写,需要调用后端接口,经常要用到wx.request方法,所以就自己封装了一下,简化一下代码,如果能给大家提供帮助更好,在封装的时 ...
- 微信小程序之封装http请求
下面将封装http请求服务部分的服务以及引用部分 // 本服务用于封装请求 // 返回的是一个promisepromise var sendRrquest = function (url, metho ...
- 微信小程序:封装全局的promise异步调用方法
微信小程序:封装全局的promise异步调用方法 一:封装 function POST(url, params) { let promise = new Promise(function (resol ...
- 微信小程序简单封装图片上传组件
微信小程序简单封装图片上传组件 希望自己 "day day up" -----小陶 我从哪里来 在写小程序的时候需要上传图片,个人觉得官方提供的 Uploader 组件不是太好用, ...
- 微信小程序 request请求封装
在utils文件夹新建文件utils.js,封装代码如下: 小程序升级后内部不自带Promise方法,需外部引入Promise方法 var sendRequest = function (url, ...
- 微信小程序接口封装、原生接口封装、request、promise封装
相信大家在做微信小程序的时候会有很多地方需要调用接口,就和pc以及手机端一样,多个页面多次调用会有很多状态,那为了节省大家的开发时间就会需要给请求的接口做一些简单封装,便于开发,在这里我用了两个js, ...
- 微信小程序request请求的封装
目录 1,前言 2,实现思路 3,实现过程 3.1,request的封装 3.2,api的封装 4,实际使用 1,前言 在开发微信小程序的过程中,避免不了和服务端请求数据,微信小程序给我们提供了wx. ...
- 微信小程序网络封装-简单高效
废话引言 小程序虽然出世很久了,但一直没怎么接触到小程序开发.吉他兴趣班老师想弄一个小程序发布课程信息和打卡功能,作为IT一员就自愿加入了这个小程序开发小组中.虽然小程序面向的是前端工程师,但作为移动 ...
- 小程序重新封装打印函数console.log
习惯性使用console.log打印获取到的数据,信息等,然后上星期大佬看见了说怎么那么多打印信息出来,线上那个也是吗?问我能不能线上的就不打印出来? 我就说那就封装一个打印函数呗. 重写一个没问题, ...
随机推荐
- .NET使用ServerManager获取网站物理路径
最近因为工作需要,用wpf做了一个辅助小工具,如下图 为了获取网站的物理路径,我分析了通过ServerManager获取到的变量,也通过百度搜索了很多,但仍然没有找到方法. 后来使用必应,在国外网站找 ...
- SqlServer 技术点总结(持续更新)
本文是用于记录自己平时遇到的一些SQL问题或知识点,以便以后自己查阅,会持续的更新,增加内容.发在博客园也可以和各位博友共同学习交流,如文中记录的有错误之处希望指出,谢谢. 一.用SQL语句调用作业 ...
- idea: Unable to parse template "class"
使用idea创建文件时,报“Cannot Create Class”.具体错误为: Unable to parse template "Class" error meesage: ...
- C# 只开启一个程序,如果第二次打开则自动将第一个程序显示到桌面
using System; using System.Collections.Generic; using System.Windows.Forms; using System.Runtime.Int ...
- 重装MacOS
从U盘启动 开启或重新启动您的 Mac 后,立即按住 Option 键。 当您看到“启动管理器”窗口时,松开 Option 键。 选择您的启动磁盘,然后点按箭头或按下 Return 键。 Mac 的启 ...
- es6 set
ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. const setset = new Set([1, ...
- PHP7.27: Cookie and Session
<?php // 有的浏览器不支持Cookie,这要考虑的 $cFile="count.txt"; $acctime=time(); if(file_exists($cFil ...
- 从发布订阅模式到redux(一)
最近在学习的过程中,学习了一些关于redux的一些知识,学之前用redux,虽然会用但是实现的原理就不是特别清楚,天天沉迷于搬砖 总是这木搬砖也不是个事啊,就准备开始深入了解一些原理性的东西 首先在看 ...
- Linux技术图谱
- java读取excel文件的代码
如下内容段是关于java读取excel文件的内容,应该能对各朋友有所用途. package com.zsmj.utilit; import java.io.FileInputStream;import ...