javascript - Access-Control-Allow-Origin 不允许 Origin null

标签 javascript null xmlhttprequest cors localhost

我制作了一个小的 xslt 文件来创建一个名为 weather.xsl 的 html 输出,代码如下:

<!-- DWXMLSource="http://weather.yahooapis.com/forecastrss?w=38325&u=c" -->
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
exclude-result-prefixes="yweather"
xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>

<xsl:template match="/">
    <img src="{/*/*/item/yweather:condition/@text}.jpg"/>
</xsl:template>
</xsl:stylesheet>

我想将 html 输出加载到 html 文件中的 div 中,我正在尝试使用 jQuery 执行以下操作:

<div id="result">
<script type="text/javascript">
$('#result').load('weather.xsl');
</script>
</div>

但是我收到以下错误: Access-Control-Allow-Origin 不允许 Origin null。

我读过有关向 xslt 添加 header 的信息,但我不确定该怎么做,因此将不胜感激,如果无法通过这种方式加载 html 输出,请提出建议关于其他方法会很棒。

最佳答案

Origin null 是本地文件系统,因此这表明您正在加载执行 load 调用的 HTML 页面 file:/// URL(例如,只需在本地文件浏览器或类似浏览器中双击它)。

大多数浏览器应用 Same Origin Policy通过甚至禁止从与文档相同的目录加载文件来访问本地文件。 (以前是 Firefox 允许相同的目录和子目录,但是 not any longer

基本上,对本地资源使用 ajax 是行不通的。

如果您只是在本地测试您真正要部署到网络上的东西,而不是使用本地文件,请安装一个简单的网络服务器并通过 http:// URL 进行测试。这为您提供了更准确的安全画面。您的 IDE 可能内置了某种服务器(直接或通过扩展),让您只需在 IDE 中点击“运行”并启动服务器并为文件提供服务。

关于javascript - Access-Control-Allow-Origin 不允许 Origin null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62070889/

相关文章:

javascript - Vue 2.6 在 Safari IOS 上无法正常工作

jquery - Gingerbread 浏览器跨域响应串联错误

javascript - 使用 javascript 更改页面内容无法再次返回主页

javascript - 使用悬停动画调整大小的图像不适合容器

javascript - iOS 上的 Phonegap/Cordova + MapKit : Execute javascript function when a pin is tapped

asp.net - 检查字段值是否为空

MySQL - 行到列并保留 NULL

javascript - Facebook Graph Places 搜索 API 无法正常工作

javascript - 如何为 X 个元素关联点击功能?

c# - 当查询没有返回记录时,会抛出 Linq Cannot be Null 错误