为了账号安全,请及时绑定邮箱和手机立即绑定

访问控制-允许-原产地不允许原产地空值。

访问控制-允许-原产地不允许原产地空值。

婷婷同学_ 2019-06-14 16:32:02
访问控制-允许-原产地不允许原产地空值。我创建了一个很小的XSLT文件来创建一个名为ather.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>但是我得到了以下错误:访问控制-允许-原产地不允许使用Originnull。我读过关于向XSLT添加标题的文章,但我不确定如何做到这一点,因此,如果不能以这种方式加载html外接程序,那么关于其他方法的建议将是很好的。
查看完整描述

3 回答

?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

起源null是本地文件系统,因此这表明您正在加载执行load通过afile:///url(例如,只需在本地文件浏览器或类似的地方双击它)。不同的浏览器采用不同的方法来应用同一原产地政策本地文件。

我猜你是用Chrome看这个的。Chrome对本地文件应用SOP的规则非常严格,它甚至不允许从与文档相同的目录中加载文件。歌剧院也是。其他一些浏览器,如Firefox,允许有限地访问本地文件。但是,基本上,在本地资源中使用Ajax并不能跨浏览器工作。

如果您只是在本地测试一些真正部署到web的东西,而不是使用本地文件,那么安装一个简单的web服务器并通过http://取而代之的是URL。这给了你一个更准确的安全图片。


查看完整回答
反对 回复 2019-06-14
?
潇湘沐

TA贡献1816条经验 获得超6个赞

Chrome和Safari对在本地资源中使用Ajax有限制。这就是为什么它要抛出一个错误

访问-控制-允许-原产地不允许原产地为NULL。

解决办法:使用Firefox或将数据上传到临时服务器。如果您仍然想使用Chrome,请从下面的选项开始;

--allow-file-access-from-files

更多信息,如何添加上述参数到您的Chrome:右键单击任务栏上的Chrome图标,右键单击弹出窗口中的GoogleChrome,然后单击properties并在“快捷方式”选项卡下的“目标文本框”中添加上述参数。它会像下面这样;

C:\Users\XXX_USER\AppData\Local\Google\Chrome\Application\chrome.exe --allow-file-access-from-files

希望这能帮上忙!


查看完整回答
反对 回复 2019-06-14
?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

只是想补充一下,“运行一个Web服务器”的答案似乎相当令人望而生畏,但是如果您的系统上有python(默认情况下至少安装在MacOS和任何Linux发行版上),那么它就像:

python -m http.server  # with python3

python -m SimpleHTTPServer  # with python2

所以如果你有你的html文件myfile.html在文件夹里,比如说mydir你要做的就是:

cd /path/to/mydir
python -m http.server  # or the python2 alternative above

然后将浏览器指向:

http://localhost:8000/myfile.html

你就完蛋了!作品所有浏览器,而不禁用Web安全性,允许本地文件,甚至可以使用命令行选项重新启动浏览器。


查看完整回答
反对 回复 2019-06-14
  • 3 回答
  • 0 关注
  • 383 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信