最近正在学习Axios,相信大家都知道Axios是一个基于承诺的HTTP库,可以用在浏览器和节点。js中。所以本文将详细介绍关于Axios使用方法的相关内容,分享出来供大家参考学习、下面话不多说,来一起看看详细的介绍:
Axios Github
-
<李>从浏览器中创建xmlhttprequest李>
<李>从节点。js创建http请求李>
<李>支持承诺API李>
<李>拦截请求和响应李>
<李>转换请求数据和响应数据李>
<李>取消请求李>
<李>自动转换JSON数据李>
<李>客户端支持防御XSRF李>
使用鲍尔:
鲍尔美元安装axios
使用npm:
美元npm安装axios
执行得到请求
//为给定ID的用户创建请求 axios.get('/用户# 63;ID=12345) 不要犹豫(函数(响应){ console.log(响应); }) .catch(函数(错误){ console.log(错误); });//可选地,上面的请求可以这样做 axios。get (/user, { 参数:{ ID: 12345 } }) 不要犹豫(函数(响应){ console.log(响应); }) .catch(函数(错误){ console.log(错误); });
执行帖子请求
axios。帖子(/user, { 名字:“弗雷德”, 姓:“打火石” }) 不要犹豫(函数(响应){ console.log(响应); }) .catch(函数(错误){ console.log(错误); });
执行多个并发请求
函数getUserAccount () { 返回axios.get ('/user/12345 '); } 函数getUserPermissions () { 返回axios.get (/user/12345/权限); } axios.all ([getUserAccount (), getUserPermissions ())) 不要犹豫(axios。传播(函数(acct烫发){//两个请求现在都执行完成 }));
可以通过向axios传递相关配置来创建请求
axios(配置)//发送帖子请求 axios ({ 方法:“文章”, url:/user/12345, 数据:{ 名字:“弗雷德”, 姓:“打火石” } }); axios (url(配置)//发送得到请求(默认的方法) axios ('/user/12345 ');
请求方法的别名为方便起见,为所有支持的请求方法提供了别名
axios.request(配置) axios。get (url(配置) axios.delete (url(配置) axios。头(url(配置)) axios。帖子(url(数据(配置))) axios。把(url(数据(配置))) axios。补丁(url(数据[,配置]])
注意在使用别名方法时,url,方法,数据这些属性都不必在配置中指定。
处理并发请求的助手函数
axios.all (iterable) axios.spread(回调)
可以使用自定义配置新建一个axios实例
axios.create((配置)) var=axios.create({实例 baseURL:“https://some-domain.com/api/? 超时:1000, 标题:{“X-Custom-Header”:“foobar”} });
以下是可用的实例方法。指定的配置将与实例的配置合并
axios #请求(配置) axios # get (url(配置) axios #删除(url(配置) axios #头(url(配置)) axios #职位(url(数据(配置))) axios #把(url(数据(配置))) axios #补丁(url(数据[,配置]])
这些是创建请求时可以用的配置选项。只有url是必需的。如果没有指定方法,请求将默认使用得到方法。
{//皍rl”是用于请求的服务器url url:“/用户”,//胺椒ā笔谴唇ㄇ肭笫笔褂玫姆椒? 方法:‘得到’,//默认是得到的//癰aseURL”将自动加在“url”前面,除非“url”是一个绝对url。//它可以通过设置一个“baseURL”便于为axios实例的方法传递相对URL baseURL:“https://some-domain.com/api/?//皌ransformRequest”允许在向服务器发送前,修改请求数据//只能用在“把”,“职位”和“补丁”这几个请求方法//后面数组中的函数必须返回一个字符串,或ArrayBuffer,或流 transformRequest:[功能(数据){//对数据进行任意转换处理 返回数据; }],//皌ransformResponse”在传递给/catch前,允许修改响应数据 transformResponse:[功能(数据){//对数据进行任意转换处理 返回数据; }],//巴贰笔羌唇环⑺偷淖远ㄒ迩肭笸? 标题:{“X-Requested-With”:“XMLHttpRequest”},//安问笔羌唇肭肭笠黄鸱⑺偷腢RL参数//必须是一个无格式对象(普通对象)或URLSearchParams对象 参数:{ ID: 12345 },//皃aramsSerializer”是一个负责“参数”序列化的函数//(例如https://www.npmjs.com/package/qs、http://api.jquery.com/jquery.param/) paramsSerializer:函数(params) { Qs返回。stringify (params, {arrayFormat:“括号”}) },//笆荨笔亲魑肭笾魈灞环⑺偷氖?/只适用于这些请求方法“放”,“文章”,和“补丁”//在没有设置“transformRequest”时,必须是以下类型之一://字符串,普通对象,ArrayBuffer, ArrayBufferView URLSearchParams//榔髯ㄊ?FormData,文件,Blob//-节点专属:流 数据:{ 名字:“弗雷德” },//俺薄敝付ㄇ肭蟪钡暮撩胧?0表示无超时时间)//如果请求话费了超过“超时”的时间,请求将被中断 超时:1000,//皐ithCredentials”表示跨域请求时是否需要使用凭证 withCredentials:假的,//默认的//笆逝淦鳌痹市碜远ㄒ宕砬肭?以使测试更轻松//返回一个承诺并应用一个有效的响应(查阅(响应文档)(# response-api))。 适配器:函数(配置){/*……*/},//吧矸菅橹ぁ北硎居Ω檬褂肏TTP基础验证,并提供凭据//这将设置一个“授权”头,覆写掉现有的任意使用“头”设置的自定义“授权”头 身份验证:{ 用户名:“janedoe”, 密码:“s00pers3cret” },//皉esponseType”表示服务器响应的数据类型,可以是‘arraybuffer’,‘团’,‘文档’,‘json’,‘文本’,‘流’ responseType: json,//默认的//皒srfCookieName”是用作xsrf令牌的值的饼干的名称 xsrfCookieName:“XSRF-TOKEN ',//违约//皒srfHeaderName”是承载xsrf令牌的值的HTTP头的名称 xsrfHeaderName:“X-XSRF-TOKEN ',//默认的//皁nUploadProgress”允许为上传处理进度事件> {//数据的由服务器提供的响应 数据:{},//白刺崩醋苑衿飨煊Φ腍TTP状态码 状态:200//皊tatusText”来自服务器响应的HTTP状态信息 statusText:“OK”,//标题的服务器响应的头 标题:{},//芭渲谩笔俏肭筇峁┑呐渲眯畔? 配置:{} }Axios学习笔记之使用方法教程