我正在使用 jQuery (1.7.2) getScript() AJAX 方法来获取包含嵌入式 javascript 的外部(跨域)HTML 页面。我在 getScript() 命令中使用“脚本”数据类型,因为它没有跨域限制。在浏览器的 JS 控制台中,我使用以下代码,它等效于 getScript() 请求:
$.ajax({
url: url, // This url is for an HTML page with embedded JS - not for a JS file
type: 'get',
crossDomain: true,
dataType: 'script',
beforeSend: function(result) { result.setRequestHeader('Accept', '*/*') },
success: function(result) { console.log('SUCCESS:\t' + result) },
error: function(result) { console.log('ERROR') },
complete: function(result) { console.log('COMPLETE:\t' + result.responseText) }
})
这返回“成功”,但没有结果。
SUCCESS: undefined
COMPLETE: undefined
控制台还告诉我内容被解释为脚本,但使用 MIME 类型 text/html 传输(我想这是因为我使用的 url 用于 HTML 页面)。我知道整个 HTML 数据已传输到客户端,因为我可以使用浏览器 JS 控制台的网络面板访问它,并且我可以确认确实传输了正确数量的 KB。
我不确定我是否关心 MIME 消息,因为我真的只需要掌握传输的内容并进行一些解析。如何使用 jQ/JS 访问此传输的内容(位于客户端某处)?如果我无法访问它,浏览器控制台的网络面板如何访问它?