微信小程序  http请求封装详解及实例代码

发布时间 - 2026-01-10 23:04:51    点击率:

微信小程序  http请求封装

示例代码

wx.request({
 url: 'test.php', //仅为示例,并非真实的接口地址
 data: {
   x: '' ,
   y: ''
 },
 method:'POST',
 header: {
   'content-type': 'application/json'
 },
 success: function(res) {
  console.log(res.data)
 },
 fail: function( res ) {
   fail( res );
  }
})

以上为小程序的基本http请求代码,实际代码中如果每次这样来写是比较繁琐的,那我们就来做一下封装。

那代码中我们比较关注什么?

1.请求的参数,访问的接口
2.GET/POST...请求方式
3.请求参数统一处理(比如:加密、设置公共参数...)
4.请求成功返回的数据(比如:解密、抽离逻辑层数据)
5.请求失败反馈

我们不关注什么?

1.请求url(一般固定的配置在某个地方)
2.根据不同的接口规则做不同的请求参数(比如:参数加密等)
...

让我们代码实操

network.js

var API_URL = 'http://localhost/loverule/api/api.php'

var requestHandler = {
  params:{},
  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;

  wx.request({
   url: API_URL,
   data: params,
   method: method, // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
   // header: {}, // 设置请求的 header
   success: function(res){
    //注意:可以对参数解密等处理
    requestHandler.success(res)
   },
   fail: function() {
    requestHandler.fail()
   },
   complete: function() {
    // complete
   }
  })
}

module.exports = {
 GET: GET,
 POST: POST
}

1.页面中调用(以GET请求为例)

  //导入js
  var network = require("../../utils/network.js")

  //写入参数
  var params = new Object()
  params.api_name = "api_user_login"
  params.account = "hanqing"
  params.password = "123456"

  //发起请求
  network.GET(
  {
    params: params,
    success: function (res) {
     console.log(res)
     //拿到解密后的数据,进行代码逻辑

    },
    fail: function () {
     //失败后的逻辑

    },
  })

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


# 微信小程序  # http请求封装  # 小程序  # http请求  # http  # 微信小程序设置http请求的步骤详解  # 微信小程序之GET请求的实例详解  # 微信小程序 同步请求授权的详解  # 微信小程序 网络请求(GET请求)详解  # 微信小程序 POST请求的实例详解  # 微信小程序 网络请求(post请求  # get请求)  # 微信小程序HTTP接口请求封装代码实例  # 微信小程序网络请求封装示例  # 微信小程序请求前置的方法详解  # 以对  # 让我们  # 希望能  # 仅为  # 为例  # 来做  # 谢谢大家  # 来写  # 上为  # 不关注  # 在某个  # success  # function  # type  # content  # json  # application  # log  # fail  # method 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 开心动漫网站制作软件下载,十分开心动画为何停播?  Laravel如何实现事件和监听器?(Event & Listener实战)  Laravel怎么清理缓存_Laravel optimize clear命令详解  Android使用GridView实现日历的简单功能  如何在Windows 2008云服务器安全搭建网站?  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  如何在建站宝盒中设置产品搜索功能?  Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】  长沙做网站要多少钱,长沙国安网络怎么样?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  如何在建站之星网店版论坛获取技术支持?  Python文件异常处理策略_健壮性说明【指导】  SQL查询语句优化的实用方法总结  微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】  如何用AWS免费套餐快速搭建高效网站?  中山网站推广排名,中山信息港登录入口?  如何快速搭建高效可靠的建站解决方案?  如何用免费手机建站系统零基础打造专业网站?  Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程  深圳网站制作的公司有哪些,dido官方网站?  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤  高性能网站服务器配置指南:安全稳定与高效建站核心方案  在线制作视频的网站有哪些,电脑如何制作视频短片?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  Laravel如何使用withoutEvents方法临时禁用模型事件  Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议  BootStrap整体框架之基础布局组件  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  昵图网官网入口 昵图网素材平台官方入口  google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤  Laravel定时任务怎么设置_Laravel Crontab调度器配置  悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤  Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】  Laravel distinct去重查询_Laravel Eloquent去重方法  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  HTML 中如何正确使用模板变量为元素的 name 属性赋值  如何在IIS中新建站点并解决端口绑定冲突?  C++时间戳转换成日期时间的步骤和示例代码  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  如何在宝塔面板创建新站点?  Laravel如何实现文件上传和存储?(本地与S3配置)  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  Linux安全能力提升路径_长期防护思维说明【指导】