zoukankan      html  css  js  c++  java
  • axios.js 使用

    什么是 axios?

    Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。

    特性

    • 从浏览器中创建 XMLHttpRequests

    • 从 node.js 创建 http 请求

    • 支持 Promise API

    • 拦截请求和响应

    • 转换请求数据和响应数据

    • 取消请求

    • 自动转换 JSON 数据

    • 客户端支持防御 XSRF

    发送表单数据

    默认情况下,axios将JavaScript对象序列化为JSON。 要以application / x-www-form-urlencoded格式发送数据,您可以使用以下选项之一。

    期待格式:key1=value1&key2=value2...

    默认格式:{kye1:avlue1,key2:value2}

    浏览器脚本中

    • 在浏览器中,您可以使用URLSearchParams API,如下所示:
    const params = new URLSearchParams();
    params.append('param1', 'value1');
    params.append('param2', 'value2');
    axios.post('/foo', params);
    

    请注意,所有浏览器都不支持URLSearchParams(请参阅caniuse.com),但可以使用polyfill(确保填充全局环境)。

    使用qs库编码数据

    const qs = require('qs');
    axios.post('/foo', qs.stringify({ 'bar': 123 }));
    

    显式地设置响应头

    import qs from 'qs';
    const data = { 'bar': 123 };
    const options = {
      method: 'POST',
      headers: { 'content-type': 'application/x-www-form-urlencoded' },
      data: qs.stringify(data),
      url,
    };
    axios(options);
    

    序列化

    • 将object对象序列化为 application / x-www-form-urlencoded格式字符串发送
    axios.post('http://127.0.0.1:5000/api/addhero',$('#form').serialize()).then()
    

    接收非表单数据(Json)

    • 在node.js中,您可以使用querystring模块,如下所示:
    const querystring = require('querystring');
    axios.post('http://something.com/', querystring.stringify({ foo: 'bar' }));
    

    或者,也可以使用qs库。

    部分内容摘自axios中文文档

  • 相关阅读:
    min-height IE6的解决方案
    javascript数据类型检测方法
    typeof、instanceof与isPrototypeOf()的差异与联系
    获取真实IP地址
    表格中的IE BUG
    【译】你对position的了解有多少?
    vim快捷键
    syntaxerror : unexpected token &
    .Net 高效开发之不可错过的实用工具
    @media screen 针对不同移动设备——响应式设计
  • 原文地址:https://www.cnblogs.com/langkyeSir/p/13343154.html
Copyright © 2011-2022 走看看