关于请求方式GET和POST,篇幅有些长,见我的这篇博客:聊聊GET和POST的区别
这里只是说说具体的写法,自我观点,欢迎指正
不论是那种,主要由有这几部分组成:
组成 | 介绍 |
---|---|
method/type | 请求方式,常见的是GET/POST |
url | 请求地址 |
data | 请求需要的参数 |
header | 请求头,在接口文档中会给出 |
success/fail/error | 请求后的执行函数 |
js和jQuery
js使用需要引入jQuery
$.ajax({
type: "post/get",//请求方式
url: "请求地址",//请求地址
dataType: 'json/jsonp',//预期服务器返回的数据类型,跨域用jsonp
data: {},//请求参数
timeout: 1000,//设置请求超时时间
success: function(data) {}//请求成功调用函数
error: function(data) {}//请求失败调用函数
})
vue.js
需要预先进行安装或引用:
npm安装(建议)
$ npm install axios
通过cdn引入
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
然后在main.js中引用
import axios from 'axios';
Vue.prototype.$axios = axios;
方法:
get方式
this.$axios({
method: 'get',//请求方式,默认的请求方法是GET
url: "请求地址",//请求地址
params: {},//请求参数
headers: {''},//请求头
timeout: 1000, // 请求超时时间(毫秒)
})
.then(function(response) {}),//响应函数
post的方式:
post方式需要对数据进行转化
qs可通过npm install qs
命令进行安装,是一个npm仓库所管理的包
然后在main.js中引用
import qs from 'qs';
Vue.prototype.$qs = qs;
请求方式:
let api = ""//地址
let api_data = _this.$qs.stringify({ })//参数
this.$axios.post(api, api_data).then(res => {})//回调函数
微信小程序
详解见官方文档
wx.request({
url: 'test.php', //仅为示例,并非真实的接口地址
data: {
x: '',
y: ''
},
header: {
'content-type': 'application/json' // 默认值
},
success (res) {
console.log(res.data)
}
})
uni-app
详见官方文档
uni.request({
url: 'https://www.example.com/request', //仅为示例,并非真实接口地址。
data: {
text: 'uni.request'
},
header: {
'custom-header': 'hello' //自定义请求头信息
},
success: (res) => {
console.log(res.data);
this.text = 'request success';
}
});
所写博客皆为自己的心得,如有错误欢迎指出,侵删,谢谢