最近项目用到了一些es6的知识,其中大篇幅在vue框架中使用了fetch()函数,总结了一些使用的技巧:

一,

  1,POST带参数)fetch提交json格式的数据到服务器:

 //fetch替换vue-resource
let jsonData= {
params1:'param1_value',
params2:'param2_value'
};
6 fetch(
url(地址),
{
9  method: 'POST',
10  credentials: 'include',
11  headers: {(添加头文件)
  'Content-Type': 'application/json;charset=UTF-8'(指定数据类型和编码),
  'Authorization': 'Bearer ' + localStorage.access_token(在请求信息中添加assess_token验证码),
},
body: JSON.stringify(jsonData),
}
17 ).then(function(res){
18    return res.json().then((data)=>{(返回的res为原生Promise对象,需要转换)
19      console.log(data)
20    })
});
//end fetch替换vue-resource
2,GET带参数)fetch提交json格式的数据到服务器:
 params1='param1_value' ; params2='param2_value' ;
3
let url = 'http://www.cnblogs.com'+'?param1='+param1_value+'&param2='+param2_value; (get方式只能把参数拼接到url地址中进行传递)
5
6 fetch(
url(地址),
{
9  method: 'GET',
10  credentials: 'include',
11  headers: {(添加头文件)
  'Content-Type': 'application/json;charset=UTF-8'(指定数据类型和编码),
  'Authorization': 'Bearer ' + localStorage.access_token(在请求信息中添加assess_token验证码),
},
}
17 ).then(function(res){
18    return res.json().then((data)=>{(返回的res为原生Promise对象,需要转换)
19      console.log(data)
20    })
});
//end fetch替换vue-resource
  3,POST带参数)提交正常表单formData格式的数据到服务器:
提交格式为:

 <form action="。。。url地址。。。" method="post">
<input type=''text" name="name" value="认识c语言">
<input type=''text" name="cp_weight" value="0">
</form>
  4,POST带参数)fetch提交自定义表单formData格式的数据到服务器:
(在fetch下使用FormData对form表单元素进行数据封装后进行post提交至服务器,其格式被转为了WebKitFormBoundary模式,如下图)    

如果需要使用正常的formData格式提交,代码如下:

 let formData = new FormData();
formData.append('name' , '认识c语言');
formData.append('cp_weight' , '0');
fetch('url地址',{
method: 'POST',
credentials: 'include',
headers: {
// 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',(这一句一定不能加,很多人容易忽略这个地方,否则就是上图的WebKitFormBoundary格式数据)
'Authorization': 'Bearer ' + localStorage.access_token,
},
body: formData,
}).then(function(res){
return res.json().then((data)=>{
console.log(data);
})
});

fetch()函数使用的一些技巧的更多相关文章

  1. TypeScript开发ReactNative之fetch函数的提示问题

    使用TypeScript开发ReactNative时,发现在类中调用 fetch 函数时IDE可能会提示找不到,无法加载,特别是当类中存在同名的 fetch 成员方法时更是郁闷了,虽然程序是可以执行的 ...

  2. reactNative-解决react native使用fetch函数 Network request failed 问题

    解决react native使用fetch函数Network request failed问题 最近公司新开发一个app, 用react native架构好后,用xcode模拟器打开app,对接登陆接 ...

  3. MySQL的随机数函数rand()的使用技巧

    咱们学php的都知道,随机函数rand或mt_rand,可以传入一个参数,产生0到参数之间的随机整数,也可以传入两个参数,产生这两个参数之间的随机整数. 而在mysql里,随机数函数rand不能传参, ...

  4. php学习零散笔记—字符串分割、fetch函数和单双引号。

    1 字符串分割——split()函数和preg_split()函数 split — 用正则表达式将字符串分割到数组中——貌似PHP5.3以上已不赞成使用 array split ( string $p ...

  5. ES6 fetch函数与后台交互

    最近在学习react-native,遇到调用后端接口的问题.看了看官方文档,推荐使用es6的fetch来与后端进行交互,在网上找了一些资料.在这里整理,方便以后查询. 1.RN官方文档中,可使用XML ...

  6. C# 5.0 Async函数的提示和技巧

    一.创建Async函数 Async是C# 5.0中新增的关键字,通过语法糖的形式简化异步编程,它有如下三种方式: async Task<T> MyReturningMethod { ret ...

  7. JavaScript 函数(方法)的封装技巧要领及其重要性

    作为一枚程序猿,想必没有人不知道函数封装吧.在一个完整的项目开发中,我们会在JS代码中对一些常用(多个地方调用)的操作进行一个函数的封装,这样便于我们调试和重复调用,以致于能够在一定程度上减少代码的冗 ...

  8. api日常总结:前端常用js函数和CSS常用技巧

    我的移动端media html{font-size:10px} @media screen and (min-width:321px) and (max-width:375px){html{font- ...

  9. js中字符替换函数String.replace()使用技巧

    定义和用法 replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串. 语法 stringObject.replace(regexp/substr,replac ...

随机推荐

  1. 通过JDBC连接数据库(MySql为例)并读取数据库信息--JSP基础

    1.先建数据库,数据库名为:employee_DB;然后在数据库employee_DB下建表,表名为employee;最后插入数据. create database employee_DB; use ...

  2. java——基础语法

    java基础语法 1.关键字:java赋予特殊含义的单词. 2.标识符:程序中开发人员自定义的名词,例如:类名,函数名,变量名(注意事项:①不能以阿拉伯数字开头②不能采用关键字). 3.常量:固定的数 ...

  3. RobotFramework下HttpLibrary库其它关键字

    关键字 使用描述 DELETE 向服务器端发送http delete请求,该请求接收一个参数[ url ],请求的方式和post请求非常类似,示例: DELETE /_utils/config.htm ...

  4. Kruskal重构树(货车运输)

    ... 和Kruskal生成树一样 本来是u,v连一条f的边 现在变成新建一个点,点权为f,u v都像它连无边权的边 (实际上应该是u的根和v的根) 这样树有一些性质: 1.二叉树 2.原树与新树两点 ...

  5. java 提取目录下所有子目录的文件到指定位置

    package folder; import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundExcept ...

  6. docker 一键安装zabbix server、zabbix agent

    基本原理.须知:1.zabbix 分为zabbix server和zabbix agent,其中zabbix server需要web环境,并且其数据存储在独立的数据库中:2.docker是一种容器服务 ...

  7. hadoop第一课

    Hadoop基本概念 在当下的IT领域,大数据很"热",实现大数据场 景的Hadoop系列产品更"热". Hadoop是一个开源的分布式系统基础架构,由 Apa ...

  8. python操作excel常用的方法

    读操作模块安装 pip install xlrd 写操作模块安装 pip install xlwt xlrd读操作 1.打开excel xl = xlrd.open_workbook('test.xl ...

  9. HttpSessionActivationListener序列化与反序列化

    一.序列化与反序列化 1.什么是序列化 把对象转化位字节序列的过程称为序列化(保存到硬盘,持久化) 把字节序列转化位对象的过程称为反序列化(存放于内存) 2.序列化的用途 把对象的字节序列永久保存到硬 ...

  10. Filter的过滤链理解

    一.Filter过滤链 web.xml配置了filter过滤器,在容器启动的时候执行了init()方法进行了初始化,然后在容器关闭的时候执行了destroy()方法销毁过滤器,在每次服务器接受请求的时 ...