zoukankan      html  css  js  c++  java
  • axios

    Axios 是由原生的XMLRequest和Priomse相结合的http库,进行对数据的请求等操作 。

    安装:

     npm install axios

     使用:

    Get:

    axios.get('/user', {
        params: { //连接参数
          ID: 12345
        }
      })
      .then(function (response) {
        console.log(response);
      })
      .catch(function (error) {
        console.log(error);
      });

    Post:

    axios.post('/user', { //提交的数据
        firstName: 'Fred', 
        lastName: 'Flintstone'
      })
      .then(function (response) {
        console.log(response);
      })
      .catch(function (error) {
        console.log(error);
      });

    多个请求并发的时候:

    axios.all([getUserAccount(), getUserPermissions()]) //和Promise基本相同
      .then(axios.spread(function (acct, perms) {
        // 两个请求现在都执行完成
      }));

    axios的config参数:

      

    const config = {
        url:"/user", //数据地址
        method:"get", //请求方式 
        baseURL : "http://smome-domain.com/api/",//将baseURL自动添加到url之前,兴程绝对的URL
        transformRequest:[
            //允许在向服务器发送前修改数据,只能用在PUT,POST ,PATCH这几个请求方法中
            //后面数组中的函数必须返回一个字符串或是数据流
            function(data){
                return data;
            }
        ],
        transformResponse:[
            //在传递给then或是catch之前,允许对响应数据进行修改
            function(data){
                //对数据进行转化
                return data;
            }
        ],
        //自定义请求头
        headers:{"X-Requested-With": "XMLHttpRequest"},
        //请求发送的数据 必须是一个无格式对象
        params:{ 
            ID:1235
        },
        //负责 params序列化的函数
        paramsSerializer:function(params){
           // ....
        },
        //作为请求主体被发送的数据 只适用于PUT POST  PATCH
        data:{
            fistrName:"zzz"
        },
        //超时时间
        timeout:1000,
        //表示跨域请求时是否需要使用凭证
        withCredentials:false ,//默认的
        //允许自定义处理请求,以使测试更轻松 返回以恶搞有效的响应
        adapter:function(config){
            //...
        },
        //http的基础验证
        auth:{
            usename:'...',
            password:'....'
        },
        //服务器响应的数据类型
        responseType:"json",
        //xsrf token 的值的HTTP头的名称
        xsfHeaderName:'X_XSRF-TOKEN',
        //作用 xsrf token的值的cookie名称
        xsrfCookieName:'XSRF_TOKEN',
        //允许上传处理进度事件
        onUploadProgress:function(progressEvent){},
        //允许为下载处理进度事件
        onDownloadPeogress:function(){},
        maxContentLength:2000, //允许响应头内容的最大尺寸
        validStatus:function(){} ,//定义对于给定的HTTP的响应状态码是 resolve /reject
        //follow的最大重定数目
        maxRedirects:5,
       // `httpAgent` 和 `httpsAgent` 分别在 node.js 中用于定义在执行 http 和 https 时使用的自定义代理。允许像这样配置选项:
      // `keepAlive` 默认没有启用
      httpAgent: new http.Agent({ keepAlive: true }),
      httpsAgent: new https.Agent({ keepAlive: true }),
    
      // "proxy" 定义代理服务器的主机名称和端口
      // `auth` 表示 HTTP 基础验证应当用于连接代理,并提供凭据
      // 这将会设置一个 `Proxy-Authorization` 头,覆写掉已有的通过使用 `header` 设置的自定义 `Proxy-Authorization` 头。
      proxy: {
        host: "127.0.0.1",
        port: 9000,
        auth:  {
          username: "mikeymike",
          password: "rapunz3l"
        }
      },
    
      // `cancelToken` 指定用于取消请求的 cancel token
      // (查看后面的 Cancellation 这节了解更多)
      cancelToken: new CancelToken(function (cancel) {
      })
    
    }





  • 相关阅读:
    C#在window服务配置Log4Net.dll
    致于即将逝去的2108年,2019年您好
    关于:未能加载文件或程序集“ICSharpCode.SharpZipLib”或它的某一个依赖项异常的解决方案
    Vs 中关于项目中的某 NuGet 程序包还原失败:找不到“xxx”版本的程序包“xxx”
    Git分布式版本控制器常用命令和使用
    微信公众平台网页登录授权多次重定向跳转,导致code使用多次问题
    Visual Studio高效实用的扩展工具、插件
    关于微信企业付款到零钱X509Certificate2读取证书信息,发布到服务器访问不到的解决方案
    关于ASP.NET MVC 项目在本地vs运行响应时间过长无法访问时,解决方法!
    彻底关闭windows10自动更新解决方案
  • 原文地址:https://www.cnblogs.com/panjingshuang/p/12054483.html
Copyright © 2011-2022 走看看