可使用Fetch API或XMLHttpRequest发送数据请求:Fetch支持GET/POST,需配置method、headers、body;XHR兼容性好,需open、setRequestHeader、send;FormData专用于文件上传。

如果您希望在HTML5环境中向服务器发送数据请求,则可以使用原生的Fetch API或传统的XMLHttpRequest(Ajax)方式。以下是实现该功能的具体方法:
一、使用Fetch API发送GET请求
Fetch API是HTML5中引入的现代异步请求接口,基于Promise设计,语法简洁,支持JSON、文本、Blob等多种响应类型。它默认不携带Cookie,如需发送认证信息需显式配置。
1、在JavaScript中调用fetch()函数,并传入目标URL字符串。
2、在then()回调中使用response.json()解析JSON格式响应体。
立即学习“前端免费学习笔记(深入)”;
3、使用catch()捕获网络错误或Promise拒绝状态。
二、使用Fetch API发送POST请求
Fetch通过配置options参数可实现POST提交,需指定method为”POST”,并设置headers与body内容。body必须为字符串、FormData、URLSearchParams或Blob等可序列化类型。
1、构造一个包含method、headers和body属性的配置对象。
2、将JSON数据通过JSON.stringify()转换为字符串,并设Content-Type为application/json。
3、在fetch()第二个参数中传入该配置对象。
三、使用XMLHttpRequest发送GET请求
XMLHttpRequest(XHR)是较早的浏览器原生请求机制,兼容性更广,适用于需支持IE10及以下版本的场景。其执行流程包括创建实例、配置请求、注册回调、发送请求四个阶段。
1、使用new XMLHttpRequest()创建请求对象。
2、调用open(“GET”, url, true)初始化请求,第三个参数true表示异步模式。
3、监听onload事件,在其中检查xhr.status是否为200。
4、调用send()方法发起请求。
四、使用XMLHttpRequest发送POST请求
XMLHttpRequest发送POST请求时需手动设置请求头Content-Type,并将数据作为send()的参数传入。若提交表单数据,推荐使用FormData对象自动处理编码与边界。
1、调用open(“POST”, url, true)初始化POST请求。
2、使用setRequestHeader()设置Content-Type为application/x-www-form-urlencoded或multipart/form-data。
3、若使用普通键值对,将数据拼接为key=value&key2=value2格式;若使用FormData,直接传入send()。
4、在onload中读取xhr.responseText获取响应内容。
五、使用FormData上传文件并发送POST请求
FormData对象专用于构造表单数据,能自动处理文件字段的二进制编码与MIME边界,无需手动设置Content-Type,浏览器会自动生成正确的请求头。
1、创建空的FormData实例:const formData = new FormData();
2、调用append()方法添加文本字段,例如formData.append(“username”, “admin”);
3、获取元素的files[0],并调用formData.append(“file”, file);
4、将formData直接传入fetch()或xhr.send(),此时不可设置Content-Type请求头。
以上就是html5怎么发送请求_html5用Fetch或Ajax向服务器发送数据请求【发送】的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1607107.html
微信扫一扫
支付宝扫一扫