responseType属性可以设置server返回字节的解析类型.比如"arraybuffer", “blob”, “document”, “json”, and “text”,对应的返回的类型就是ArrayBuffer, Blob, Document, JSON, or string

arraybuffer

使用arraybuffer接收png图片,并使用8bit unsigned integer array处理 raw bytes.只是处理字节,并没有解码图片,解码图片需要png decoding library

var oReq = new XMLHttpRequest();
oReq.open("GET", "/myfile.png", true);
oReq.responseType = "arraybuffer";oReq.onload = function (oEvent) {var arrayBuffer = oReq.response; // Note: not oReq.responseTextif (arrayBuffer) {var byteArray = new Uint8Array(arrayBuffer);for (var i = 0; i < byteArray.byteLength; i++) {// do something with each byte in the array}}
};oReq.send(null);

blob

使用Blob来读取binary file

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;
}var filestream = load_binary_resource(url);
var abyte = filestream.charCodeAt(x) & 0xff; // throw away high-order byte (f7)

参考:
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Sending_and_Receiving_Binary_Data
https://www.cnblogs.com/litao229/archive/2012/09/10/2679105.html

Sending and Receiving Binary Data相关推荐

  1. String or binary data would be truncated

    提示:String   or   binary   data   would   be   truncated.   步骤:在执行插入语句时,会提示上面的error. 原因:是因为数据库中定义的字段长 ...

  2. [Microsoft][ODBC SQL Server Driver][SQL Server]String or binary data would be truncated.

    Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e57' [Microsoft][ODBC SQL Server Driver][SQL Ser ...

  3. SQL:String or binary data would be truncated

    SQL数据库提示:String or binary data would be truncated 背景步骤:在执行插入语句时,会提示上面的error. 原因:是因为数据库中定义的字段长度比较小,在插 ...

  4. 【译】 WebSocket 协议第六章——发送与接收消息(Sending and Receiving Data)

    概述 本文为 WebSocket 协议的第六章,本文翻译的主要内容为 WebSocket 消息发送与接收相关内容. 发送与接收消息(协议正文) 6.1 发送数据 为了通过 WebSocket 连接发送 ...

  5. 通过document id和content拿到SAP document的binary data

    Created by Wang, Jerry on Sep 25, 2015 文档的内容-存在ls_output-data里面 PARAMETERS: content TYPE /ipro/tdocm ...

  6. CL_FXS_URL_DATA_FETCHER - a good utility to fetch picture binary data according to url

  7. PyQt中从RAM新建QIcon对象 / Create a QIcon from binary data

    一般,QIcon是通过png或ico等图标文件来初始化的,但是如果图标资源已经在内存里了,或者一个zip压缩文件内,可以通过QPixmap作为桥梁,转换为图标. zf = zipfile.ZipFil ...

  8. kafka receiving network data closing socket

    卡夫卡 '' % self.async 报错 先卸载: pip uninstall kafka-python pip uninstall kafka 再安装 python -m pip install ...

  9. python报错String or binary data would be truncated

    报错信息如图所示 报错原因是 因为字符串长度导致的  无法插入数据 解决办法: 1. 查看数据库 表中是字符串类型的,修改表结构 字符串类型的长度 --改数据库字段类型 alter table 表名 ...

最新文章

  1. javascript自定义cookie
  2. Cloudera Manager 4.6 安装部署hadoop CDH集群
  3. Rest Framework:序列化组件
  4. MSRCR(Multi-Scale Retinex with Color Restore)多尺度Retinex图像增强
  5. 玩转springboot:配置文件详细讲解
  6. 爱酷pro充电测试软件,iQOO 5 Pro续航、充电测试简报
  7. VTK:可视化之FrogSlice
  8. java 运行时异常与非运行时异常理解
  9. (四)nodejs循序渐进-函数,类和对象(基础篇)
  10. bzoj 1672: [Usaco2005 Dec]Cleaning Shifts 清理牛棚(DP)
  11. 【C++】C++中你不了解的类型转换
  12. 二进制差分码规则_二进制 你不知道的事
  13. 下单账号与支付账号不一致_如何申请企业支付宝账号
  14. matlab四元数傅里叶变换,四元数傅里叶变换
  15. openwrt 添加usb网卡_如何在双网卡的蜗牛星际上打一个openwrt软路由和NAS一体机
  16. Meta-learning algorithms for Few-Shot Computer Vision 论文解读(二)
  17. 八、OpenDaylight应用基础开发(ODL控制器初级开发流程总结)
  18. 75 ----平面二次曲线方程的化简: 移轴变换、转轴变换、伸缩变换
  19. xcode 翻新工程_18个著名网站的酷概念设计(翻新)
  20. glue logic-胶合逻辑

热门文章

  1. bootstrap input不允许为空_SpringCloud Stream你所不知道的进阶实战
  2. linux 路径 冒号_软件测试必须掌握的linux命令大全
  3. Python使用傅里叶变换调整音频文件音量
  4. Python使用matplotlib填充图形指定区域
  5. python xlsxwriter dict_python学习-xlsxwriter模块
  6. html/css/js各类相对路径引用方法归类
  7. mybatisplus多表关联查询_Excel、MySQL、PowerBI、Python来告诉你 数据关联与联合不一样
  8. swift python javascript_最小的Swift App
  9. 运行Docker时不加sudo
  10. 数据库扩容 mysql_mysql数据库怎么扩容