JavaScript 在 Firefox 和 Safari 中有效,但在 Internet Explorer 或 Chrome 中无效

标签 javascript google-chrome internet-explorer firefox safari

<分区>

我为我们的培训公司管理一个网站。该站点想要嵌入来自 Indeed.com 的 API,以显示来自 Indeed 的一组工作机会。从 Indeed 网站上,我获得了 JavaScript 代码(jobroll - 请参阅 link)并在测试页上实现了它。

可以找到这个测试页here .因为可以使用不同的关键字,所以我希望将四个关键字的结果显示在四列中,每行两列。 JavaScript 代码适用于 Firefox 和 Safari,但不适用于 Internet Explorer 或 Chrome。我不是编码员,因此需要您的帮助。我做错了什么或遗漏了什么?

最佳答案

这里的问题是 mime 类型不匹配,如 Internet Explorer 和 Google Chrome 的控制台输出所示 - firefox 似乎只是让这个滑动。它可能不应该。

考虑以下代码:

<script type="text/javascript" src="...indeed.nl/jobroll?q=tmap&l=&limit=10"></script>

这期望 jobroll 资源是 JavaScript 资源(如果您检查响应主体,它就是它)。但问题在于 indeed.nl 发送 JavaScript,同时声称它是 HTML。快速检查响应 header 会发现:

enter image description here

请注意资源的响应类型不是text/javascript,而是text/html。这是 Internet Explorer 和 Chrome 不容忽视的安全问题。

为了使用此资源,您需要让此数据的提供者调整他们的响应 header 以将其标识为脚本而不是标记。或者,您可以使用本地资源来加载此内容并将其与正确的响应 header 一起返回给您的前端代码。

关于JavaScript 在 Firefox 和 Safari 中有效,但在 Internet Explorer 或 Chrome 中无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28006082/

相关文章:

javascript - 带有子菜单的可折叠垂直侧边栏菜单图标

javascript - Chrome 扩展程序的内容脚本中出现 XSS "Blocked a frame with origin from accessing a cross-origin frame"错误

css - chrome 元素检查器中的 element.style?

html - 在 Internet Explorer 中使用自动对焦时模态中奇怪的光标放置

html - 背景图像未在 IE 8 中显示

javascript - Ajax 显示成功,无需在 Internet Explorer 中提交数据

javascript - 退出键击键退出

php - 确定浏览器主页

javascript - 如何从键/值 JSON 对象获取值

html - CSS 文件在 Safari 中有效,但在 Google Chrome 或 Firefox 中无效