Javascript 从Parse.com中存储的文件读取文本数据

Javascript 从Parse.com中存储的文件读取文本数据,javascript,parse-platform,Javascript,Parse Platform,我正在将大型文本文件保存为解析中的对象。它们太大,无法直接保存为普通字符串列中的文本 稍后,我想检索这些文件并用JavaScript处理文本 下面是我用来将文本存储在解析文件中的代码: // Inputs var long_text_string = '...'; // A long string var description = '...'; // Description of this string // Convert string to array of bytes var

我正在将大型文本文件保存为解析中的对象。它们太大,无法直接保存为普通字符串列中的文本

稍后,我想检索这些文件并用JavaScript处理文本

下面是我用来将文本存储在解析文件中的代码:

// Inputs
var long_text_string = '...'; // A long string
var description      = '...'; // Description of this string

// Convert string to array of bytes
var long_text_string_bytes = [];
for (var i = 0; i < long_text_string.length; i++) {
    long_text_string_bytes.push(long_text_string.charCodeAt(i));
}

// Create Parse file
var parsefile = new Parse.File("long_text_string.txt", long_text_string_bytes);
parsefile.save({
    success: function() {
        // Associate file with a new object... 
        var textFileObject = new Parse.Object("TextFile");
        textFileObject.set('description', description);
        textFileObject.set('file', parsefile);
        textFileObject.save();
    }
});
但我得到了以下错误:

Response to preflight request doesn't pass access control check: 
No 'Access-Control-Allow-Origin' header is present on the requested resource. 
Origin '<my host>' is therefore not allowed access. 
The response had HTTP status code 403
飞行前请求的响应未通过访问控制检查: 请求的资源上不存在“Access Control Allow Origin”标头。 因此,不允许访问源“”。 响应的HTTP状态代码为403 有一点谷歌暗示文件URL没有启用CORS(parse.com/questions/access control allow origin--2)

(请注意,上面的代码适用于普通对象请求,只有在使用fileURL时才会出错)

方法3 使用浏览器规避跨原产地限制


我可以创建一个带有空iframe的网页,并将
iframe.src
设置为
parseFile.url()
。文件内容将显示在网页上。但当我试图访问iframe的DOM内容时,仍然会遇到跨源问题!更不用说一个接一个地将每个文件加载到网页上是一个极不标准的解决方案。

用常规Ajax调用加载它?我不知道他们是否允许在这些URL上进行跨源请求……我不是“常规Ajax调用”方面的专家,但尝试使用非解析特定技术肯定存在跨源问题。毫不奇怪,文件URL与我的web主机不同,因此我无法访问它。它将OK加载到iframe中,但这大约是我在这条路线上所走的距离。因此,我正在寻找一个能够“正确”完成任务的解析命令。不过,感谢您的输入。文件位于不同的域并不一定意味着您无法通过Ajax访问它。如果它们支持CORS(),他们可能会这样做来访问他们的API,然后你可以通过Ajax访问它。感谢这一建议——理论上它非常有用……但实际上,它不起作用。我使用REST API处理XMLHTTP请求,但似乎文件的Parse.com URL没有启用CORS。我已经更新了这个问题,以反映这三种方法到目前为止我已经试过了,但最终我还是回到了原点。字符串有多大?解析对象的大小限制为128K,因此您应该有足够的空间将字符串直接存储在解析对象中(尽管它可能是一个单独的对象,专用于保存单个字符串,而不是另一个对象中的附加字段)。如果超出此范围,则可以拆分字符串并将其存储为多个解析对象。
Response to preflight request doesn't pass access control check: 
No 'Access-Control-Allow-Origin' header is present on the requested resource. 
Origin '<my host>' is therefore not allowed access. 
The response had HTTP status code 403