广告
返回顶部
首页 > 资讯 > 前端开发 > html >Ajax如何实现发送和接收二进制字节流数据
  • 275
分享到

Ajax如何实现发送和接收二进制字节流数据

2024-04-02 19:04:59 275人浏览 泡泡鱼
摘要

这篇文章主要介绍ajax如何实现发送和接收二进制字节流数据,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!HTML5 Ajax 2.0标准中,增强了Ajax的许多功能,包括发送FORM

这篇文章主要介绍ajax如何实现发送和接收二进制字节流数据,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

HTML5 Ajax 2.0标准中,增强了Ajax的许多功能,包括发送FORMData数据,上传数据进度条等诸多功能。但实际上,Ajax可以字节发送二进制数据。

发送二进制数据

var oReq = new XMLHttpRequest();
oReq.open("POST", url, true);
oReq.onload = function (oEvent) {
// Uploaded.
};
var blob = new Blob(['abc123'], {type: 'text/plain'});
oReq.send(blob);

或者

var myArray = new ArrayBuffer(512);
var longInt8View = new Uint8Array(myArray);
for (var i=0; i< longInt8View.length; i++) {
longInt8View[i] = i % 255;
}
var xhr = new XMLHttpRequest;
xhr.open("POST", url, false);
xhr.send(myArray);

接收二进制数据

var oReq = new XMLHttpRequest();
oReq.open("GET", "/myfile.png", true);
oReq.responseType = "arraybuffer";
oReq.onload = function (oEvent) {
var arrayBuffer = oReq.response; // Note: not oReq.responseText
if (arrayBuffer) {
var byteArray = new Uint8Array(arrayBuffer);
for (var i = 0; i < byteArray.byteLength; i++) {
}
}
};
oReq.send(null);

当然,如上设置只能是文本类型,如果是Blob类型,那么如下即可

var oReq = new XMLHttpRequest();
oReq.open("GET", "/myfile.png", true);
oReq.responseType = "arraybuffer";
oReq.onload = function(oEvent) {
var blob = new Blob([oReq.response], {type: "image/png"});
// ...
};
oReq.send();

或者

var oReq = new XMLHttpRequest();
oReq.open("GET", "/myfile.png", true);
oReq.responseType = "blob";
oReq.onload = function(oEvent) {
var blob = oReq.response;
// ...
};
oReq.send();

如果你使用的是旧版本的浏览器,那么加载二进制可以如下

function load_binary_resource(url) {
var req = new XMLHttpRequest();
req.open('GET', url, false);
//XHR binary charset opt by Marcus Granado 2006 [http://mgran.blogspot.com]
req.overrideMimeType('text\/plain; charset=x-user-defined');
req.send(null);
if (req.status != 200) return '';
return req.responseText;
}

注意:x-user-defined告诉浏览器不要解析数据

以上是“Ajax如何实现发送和接收二进制字节流数据”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网html频道!

--结束END--

本文标题: Ajax如何实现发送和接收二进制字节流数据

本文链接: https://www.lsjlt.com/news/79802.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Ajax如何实现发送和接收二进制字节流数据
    这篇文章主要介绍Ajax如何实现发送和接收二进制字节流数据,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!HTML5 Ajax 2.0标准中,增强了Ajax的许多功能,包括发送Form...
    99+
    2022-10-19
  • C#如何实现套接字发送接收数据
    这篇文章主要介绍了C#如何实现套接字发送接收数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下服务端namespace TestServer{ ...
    99+
    2023-06-21
  • Vue中接收二进制文件流如何实现pdf预览
    这篇文章主要讲解了“Vue中接收二进制文件流如何实现pdf预览”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue中接收二进制文件流如何实现pdf预览”吧!后台Controller@Requ...
    99+
    2023-06-22
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作