在xpi的第一行没有很好地形成错误
在我的XPI中,我从用户的PC(file://)获取javascript代码并在沙箱中运行js代码。 出于某种原因,我得到没有很好地形成对我的第一行代码错误,是一个注释:在xpi的第一行没有很好地形成错误
// Yosy
我的代码仍在运行,但这个错误是烦人,我想解决这个问题,有什么建议?
代码例运行的代码:
var sandbox = new Components.utils.Sandbox(safeWin);
sandbox.window = win;
sandbox.doc = win.doc;
sandbox.__proto__ = win;
“不合式” 是一个XML处理错误。浏览器尝试将您的JavaScript代码解释为XML。您的代码示例没有显示,但我猜测您正在使用XMLHttpRequest
下载您的脚本 - 默认情况下XMLHttpRequest
将尝试解析XML代码(因为它已经说过)。你要告诉它你下载的是不应该被解析的纯文本:
var request = new XMLHttpRequest();
request.open("GET", url);
request.overrideMimeType("text/plain");
request.send();
问题感谢弗拉基米尔,出于某种原因,我得到“语法错误”。你有理由吗?顺便说一句 - 我添加了“text/javascript”的overrideMimeType – Yosi 2012-03-25 16:31:05
@Yosy:总是有一个文件和行号为每个错误提及 - 不要犹豫,检查错误发生的地方;)。 'text/plain'或'text/javascript'无关紧要,只要它不是XML的东西。 – 2012-03-25 16:35:38
你是如何初始化的沙箱?你在使用'Components.utils.Sandbox'吗?我们能否看到关键代码的一小部分? – Saebekassebil 2012-03-25 11:31:13
嗨,我更新了与沙箱使用代码示例 – Yosi 2012-03-25 11:40:45