如何解决Access-Control-Allow-Origin 不允许 Origin null
Originnull
是本地文件系统,因此这表明您正在加载load
通过file:///
URL 进行调用的 HTML
页面(例如,只需在本地文件浏览器或类似文件中双击它)。
大多数浏览器将同源策略应用于本地文件,甚至禁止从与文档相同的目录加载文件。(过去是 Firefox 允许相同的目录和子目录,但不再允许.
基本上,将 ajax 与本地资源一起使用是行不通的。
如果您只是在本地测试一些您将真正部署到 Web 的东西,而不是使用本地文件,请安装一个简单的 Web 服务器并通过http://
URL
进行测试。这为您提供了更准确的安全图片。您的 IDE 很可能内置了某种服务器(直接或通过扩展),让您只需在 IDE 中点击“运行”并启动服务器并提供文件。
解决方法
我制作了一个小的 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 添加标头的信息,但我不知道该怎么做,所以任何帮助都将不胜感激,如果无法以这种方式加载 html
输出,请提供有关其他方法的建议这样做会很棒。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。