【发布时间】:2011-02-18 13:01:26
【问题描述】:
请允许我以面向情境的方式描述我的问题:
假设 Internet Explorer 仍然是主要的网络浏览器(Firefox 有用于二进制处理的文档):
Internet Explorer 中的 XMLHttpRequest.responseText 或 XMLHttpRequest.responseXML 需要 txt 或 xml/xhtml/html,但是服务器响应带有 MIME TYPE 应用程序/八位字节的 xmlHttprequest 呢?响应字符串中的字符是否都小于 256? (该字符串的每个字符
因为使用txt或者xml有字符集编码的问题,不知道怎么处理#[[[一个编码xml的CDDATA节点(例如:UTF-8、ASCII、GB18030)使用 JavaScript,当我 getNodeText 时,docObj 是返回字节还是解码的字符?如果是根据httpresponse中header指示的charSet解码的char,那就错了。
为避免与 charSet 混淆,我希望服务器响应八位字节数据并强制将字符串数据编码为 UTF-8,但另一个 charSet 为二进制格式。
如果响应是八进制,那么我猜浏览器不会尝试解码响应“txt”。
这很奇怪吗?还是错过了对基本事物的理解?
编辑:我相信问题是这样问的:JavaScript 可以安全地处理未以 Unicode 编码的字符串吗?尝试这样做有什么问题?
编辑:不不不,我的意思是如果 http-header: content-type 是“application/octet”,当我得到 XMLHttpRequestobj 时,Internet Explorer 是否会尝试将其解码为(16 位 Unicode 或 Internet Explorer 本地设置字符集)。 responseText 使用 JavaScript?或者它(Internet Explorer)只是将响应正文的每个字节包装为 JavaScript 字符串,然后该字符串中的每个字符都小于或等于 256(字符
我说的是火星语吗?可悲的是,如果我是火星人,我会毫无模糊问题地以游客的身份来。但是,我所在的国家/地区至少与 Mars 共享一处财产:RED。
【问题讨论】:
-
请重新格式化。它是难以理解的。
-
我想他想知道如何使用 AJAX 获取二进制数据。
标签: javascript ajax xmlhttprequest content-type byte