本文主要是介绍weex stream请求封装(源码分享),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
stream 模块提供了基本的网络请求能力,例如 GET 请求、POST 请求等,用于在组件的生命周期内与服务端进行交互。
api.js 源码:
/* 引入 请求数据模块 */
const stream = weex.requireModule('stream');/* 配置API接口地址 */
const baseUrl = 'http:192.168.0.117:8080';/* 序列化请求方法 */
let toParams=(obj)=>{let param = ""if(!obj){return param;}for(let name in obj) {if(typeof obj[name] != 'function') {param += "&" + name + "=" + encodeURI(obj[name])}}return param.substring(1);
}
/* 请求处理函数 */
let ajax=(params={},callFn)=>{let ajaxData={method:params.method || 'GET',type:params.type || 'json',}if(/http:|https:/.test(params.url)){ajaxData.url=params.url;}else{ajaxData.url=baseUrl+params.url;}if(ajaxData.method=='GET'){ajaxData.url+=('?'+toParams(params.data));}else if(ajaxData.method=='POST'){ajaxData.body=toParams(params.data)}stream.fetch(ajaxData, (res)=> {callFn && callFn(res);})
}/* 暴露对象 */
export default {baseUrl,ajax
}
引用文件:
import $api from '@/api' //根据文件路径,自行修改
使用方法:
$api.ajax({url:'请求地址',method:'POST', //默认 GET,默认可以省略type:'json', //默认 json,默认可以省略data:{"name":"helang"} //可以不填写,默认为 ""
},(res)=>{console.log("请求结果:"+res);
})
weex官网文档说明:https://weex.apache.org/zh/docs/modules/stream.html
回调函数结果,根据业务需求自行完善!
作者:黄河爱浪 QQ:1846492969,邮箱:helang.love@qq.com
公众号:
web-7258
,本文原创,著作权归作者所有,转载请注明原链接及出处。更多精彩文章,请扫下方二维码关注我的公众号
这篇关于weex stream请求封装(源码分享)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!