微信小程序网络请求封装

2023-05-16

封装

/**
 * 请求头
 */
var header = {
  'content-type': 'application/x-www-form-urlencoded',
  'Authorization': "Bearer " + wx.getStorageSync("token"),
  'os': 'android',
  'version': '1.0.0',
  'device_token': 'ebc9f523e570ef14',
}

/**
 * 供外部post请求调用  
 */
function post(url, params, onSuccess, onFailed) {
  console.log("请求方式:", "POST")
  request(url, params, "POST", onSuccess, onFailed);

}

/**
 * 供外部get请求调用
 */
function get(url, params, onSuccess, onFailed) {
  console.log("请求方式:", "GET")
  request(url, params, "GET", onSuccess, onFailed);
}

/**
 * function: 封装网络请求
 * @url URL地址
 * @params 请求参数
 * @method 请求方式:GET/POST
 * @onSuccess 成功回调
 * @onFailed  失败回调
 */

function request(url, params, method, onSuccess, onFailed) {
  console.log('请求url:' + url);
  wx.showLoading({
    title: "正在加载中...",
  })
  console.log("请求头:", header)
  wx.request({
    url: url,
    data: dealParams(params),
    method: method,
    header: header,
    success: function(res) {
      wx.hideLoading();
      console.log('响应:', res.data);

      if (res.data) {
        /** start 根据需求 接口的返回状态码进行处理 */
        if (res.statusCode == 200) {
          onSuccess(res.data); //request success
        } else {
          onFailed(res.data.message); //request failed
        }
        /** end 处理结束*/
      }
    },
    fail: function(error) {
      onFailed(""); //failure for other reasons
    }
  })
}

/**
 * function: 根据需求处理请求参数:添加固定参数配置等
 * @params 请求参数
 */
function dealParams(params) {
  console.log("请求参数:", params)
  return params;
}


// 1.通过module.exports方式提供给外部调用
module.exports = {
  postRequest: post,
  getRequest: get,
}

使用

var http = require('../../httputils.js');   //相对路径


var prams = {
	username: "1111",
	password:"123456"
}
http.postRequest("https://www.baidu.com", prams,
	function(res) {
	 
	},
	function(err) {
	 
	})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

微信小程序网络请求封装 的相关文章

  • 驻点运维人员被客户投诉要求换人,换还是不换?

    项目背景 xff1a 一位朋友提到了这样的情况 xff1a 项目背景是 xff1a 我的项目已经进入到运维阶段 xff0c 公司安排了一个运维人员现场驻点 到现在为止 xff0c 我这边已经多次接到客户的投诉 xff0c 说运维人员做事没有
  • 前端通过Ajax,向后端发送form表单的JSON数据,并后端接收JSON,使用fastJSON解析的一个完整案例

    前端代码 lt DOCTYPE html gt lt html lang 61 34 en 34 gt lt head gt lt meta charset 61 34 UTF 8 34 gt lt meta name 61 34 view
  • Linux下饥荒远程服务器配置教程(包含mod的配置)(19/08/22/更新游戏更新后搜索不到服务器的对策)

    目录 xff1a 前言安装环境库安装steamcmd创建默认文件夹关于mod后记 xff1a 关于游戏更新 keyword 关键词 xff1a 饥荒 服务器 配置 linux ubuntu 参考链接 xff1a https blog csd
  • QNAP之基于ContainerStation(docker)下Aria2的配置方法

    型号 xff1a TS 231P 配置 xff1a ARM Cortex A15 CPU 64 1 70GHz 1G内存 目的 xff1a 为nas配置一个基于docker的aria2服务器 qnap从某个版本开始支持ContainerSt
  • BGP协议

    BGP协议 工作层工作原理BGP简单配置 含密码认证配置个人图解BGP 工作层 BGP是工作在应用层的协议 xff0c 但基于传输层的TCP协议 工作原理 路由协议通常分为内部网关协议 xff08 IGP Interior Gateway
  • Docker配置Ubuntu容器、ssh远程连接该容器

    span class token comment 详细请参考 https juejin cn post 6982419819211522079 span span class token comment 1 拉取 ubuntu 镜像 spa
  • Eth-Trunk链路聚合原理、静态和动态配置

    Eth Trunk原理 静态和动态配置 Eth Trunk链路聚合概述Eth Trunk链路聚合模式静态配置模式LACP动态模式 Eth Trunk链路聚合概述 在组网中经常遇到的问题 xff0c 单条链路的宽带无法满足整个园区的流量需求时
  • FreeRTOS学习笔记

    FreeRTOS学习历程 总结 xff1a 关键词 xff1a 动态创建 静态创建 任务级 中断级 一个任务至少有一个 span class token keyword do span span class token punctuatio
  • idea2020.1 常用设置

    idea2020 1 常用设置 停用自动更新设置版权自动编译设置插件设置字体大小行间距idea卡顿调整修改快捷键自动生成序列化ID自动导入包 停用自动更新 停用自动更新 xff0c 因为我也不知道更新后能不能用 xfffc 设置作者和代码相
  • 微服务的原理以及多线程的使用

    分布式应 用核 心CAP知识 xff1a CAP定理 指的是在一个分布式系统中 xff0c Consistency xff08 一致性 xff09 Availability xff08 可用性 xff09 Partition toleran
  • 【计算机网络】基础概念总结8-网关、广播和公/私IP

    8 网关 广播和私人地址 8 1 网关 比如有 网络A 和 网络B xff1a 网络A的IP地址范围为 34 192 168 1 1 192 168 1 254 34 xff0c 子网掩码为255 255 255 0 网络B的IP地址范围为
  • 系统上线后是运维流程还是开发过程?

    一位朋友提到这样的问题 xff1a 软件系统上线后是运维流程还是开发过程 xff0c 需求变更量较大的情况 俺的简单建议 xff1a 这个不是二选一的问题 xff0c 系统上线后 xff0c 其实维护和开发的工作都会有 你提到 需求变更量较
  • vnc服务器搭建

    1 vnc 服务简介 vnc Server会在服务器端启动一个监听用户要求的端口 xff0c 一般端口号在5901 xff5e 5910之间 xff0c 当客户端启动X server连接到5901后 xff0c vnc Server再将一堆
  • ubuntu18.04安装显卡RTX3090(python3.8+nvidia Drive455.38+cuda11.1+cudnn7+pytorch1.7+torchvision0.8)

    引言 实验室服务器是Ubuntu18 04 xff08 16 04和20 04 xff09 xff0c 刚刚显卡升级到RTX3090 记录一下装机过程 xff0c 每一个过程的小部分也可能单独用到 所以罗列一些用到的网站链接 xff0c 省
  • 7步教你使用Keil使用注释模板,好好注释,从我做起!

    前言 当你看到别人好的注释模板的时候是否还在多文件复制粘贴呢 xff1f 教你一招 把前人好的模板套用起来 好好注释 xff0c 从我做起 xff01 提示 xff1a 本操作在Keil4环境下进行 xff0c Keil5环境同理 一 打开
  • STM32学习——GPIO应用之跑马灯+蜂鸣器实验

    GPIO应用 跑马灯 43 蜂鸣器实验 跑马灯和蜂鸣器的实验都是使用的 GPIO 的通用推挽输出模式 xff0c 这是 GPIO 最简单的一个基本功能 1跑马灯实验 1 1硬件设计 如图所示跑马灯使用的 LED 只有 DS0 xff08 红
  • STM32学习——串口

    STM32学习 串口 USART通用同步异步收发器 xff08 Universal Synchronous Asynchronous Receiver Transmitter xff09 是一串行通信设备 xff0c 可以灵活地与外部设备进
  • core dumped 错误

    Aborted xff08 core dumpde xff09 一般是关于内存异常 xff1a 详细解释 gdb使用 1 往受到系统保护的内存地址写数据 有些内存是内核占用的或者是其他程序正在使用 xff0c 为了保证系统正常工作 xff0
  • 使用OpenCV进行特征(颜色、形状)提取

    图像处理 图像处理所做的只是从图像中提取有用的信息 xff0c 从而减少数据量 xff0c 但保留描述图像特征的像素 下面从图像中提取颜色 形状和纹理特征的方法开始 1 颜色 每次处理图像项目时 xff0c 图像的色彩空间都会成为最先探索的
  • proxifier中文汉化版

    在日常工作中使用到一些网络不稳定的服务时 xff0c 经常会遇到一个很头疼的问题 xff0c 那就是非常慢 xff0c 很是令人抓狂 xff0c 所以小编将介绍一款非常好用的代理客户端proxifier 软件下载点击这里 xff0c 支持s

随机推荐