mpvue入坑之旅(三)网络请求

本文介绍了如何在mpvue中封装网络请求方法,通过在utils目录下创建network.js文件并导出get和post方法,然后在main.js中引入并挂载到Vue原型上,使得在各页面中可以直接调用。此外,还展示了在实际项目中如何使用这些方法进行网络请求,包括点击事件触发的请求示例。文章最后提到了后端接口的准备和编译过程,以及遇到的问题。
摘要由CSDN通过智能技术生成

mpvue入坑之旅(三)网络请求

1 封装请求方法

在小程序环境下,只能使用小程序官方提供的 wx.request 方法发送外部请求,但这个方法有很多冗余,所以在开发前,先封装一下。
1)在utils目录下,新建文件 network.js

//请求地址
let apiUrl= 'http://www.abc.com/api/'

function request(url, method, data, header = {}) {
  wx.showLoading({
    title: '加载中'
  })
  return new Promise((resolve, reject) => {
    wx.request({
      url: apiUrl + url,
      method: method,
      data: data,
      headers: {
        'content-type': 'application/json' // 默认转为json格式
      },
      success: function(res) {
        wx.hideLoading()
        resolve(res.data)
      },
      fail: function(res) {
        wx.hideLoading()
        reject(res.data)
      },
      complete: function() {
        wx.hideLoading()
      }
    })
  })
}

function get(url, data) {
  return request(url, 'GET', data)
}

function post(url, data) {
  return request(url, 'POST', data)
}

export default {
  get,
  post
}

2)根目录下main.js引入network.js

import Vue from 'vue'
import App from './App'
import network from './utils/network'
Vue.prototype.$http = network

Vue.config.productionTip = false
App.mpType = 'app'

const app = new Vue(App)
app.$mount()

3)页面中直接使用

this.$http.post({
  '/login', {'token': 'token'}
}).then(res =>{
  console.log(res.data)
});

2 实例

1)springboot搭建后台,可以参考 https://blog.csdn.net/qq_23470315/article/details/105288377

2)demo中index有绑定点击方法,稍作修改测试网络请求
在这里插入图片描述

bindViewTap () {
  this.$http.post({
    '/wx/login', { }
  }).then(res => {
    console.log(res)
  })
},

3)执行 cnpm run build,编译
4)触发点击事件,查看日志(请求成功了,这里报错是接口的校验问题,下节了解微信登录)
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值