当前位置: 首页 > 面试题库 >

JavaScript Access-Control-Allow-Origin不允许使用原点null

林亦
2023-03-14
问题内容

我制作了一个小的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输出中的加载,则建议如何进行其他操作做到这一点很棒。


问题答案:

Origin null是本地文件系统,因此建议您正在加载load通过file:///URL
进行呼叫的HTML页面(例如,只需在本地文件浏览器或类似文件中双击它)。不同的浏览器采用不同的方法将“
相同来源策略”应用于本地文件。

我的猜测是您正在使用Chrome浏览器。Chrome的SOP应用于本地文件的规则非常严格,甚至不允许从与文档相同的目录中加载文件。Opera也是如此。某些其他浏览器(例如Firefox)允许对本地文件的访问受限。但基本上,将ajax与本地资源一起使用将无法跨浏览器工作。

如果您只是在本地测试要真正部署到Web的内容,而不是使用本地文件,请安装简单的Web服务器并通过http://URL进行测试。这样可以为您提供更加准确的安全信息。



 类似资料:
  • null 服务器的响应如下: XMLHttpRequest无法加载http://nqatalog.negroesquisso.pt/login.php。Access-Control-Allow-Origin不允许Origin 。 如何解决此问题?

  • 问题内容: 我有问题…我尝试在 “ http://api.master18.tiket.com/search/autocomplete/hotel?q=mah &token=90d2fad44172390b11527557e6250e50&secretkey=83e2f0484edbd2ad6fc9888c1e30ea44&output=json “中 获取json api 当我尝试离线模式(这意

  • 问题内容: 我正在尝试从lobb.js到我的node.js服务器的访存。但是,我在控制台中收到以下错误: 我将以下内容添加到我的node.js服务器中: 但是它仍然返回相同的错误。但是,即使这确实可行,也不是理想的解决方案,因为我希望所有用户都能够发送请求。 问题答案: 如果您希望每个人都可以访问Node应用程序,请尝试使用 这将允许来自任何来源的请求。该CORS使网站有大量的信息在不同的访问控制

  • 问题内容: 我是Ajax的新手,只是受过此跨域调用的任务。我们的网页上有一个文本框,用户可用来执行公司名称搜索。通过单击文本框旁边的按钮,将请求Ajax调用。不幸的是,Web服务位于单独的域中,因此自然会引起问题。 以下是我使这项工作的最佳尝试。我还要注意,此调用的目的是以XML格式返回结果,该结果将在请求的一部分中进行解析。 这又是错误消息: 对于解决方法,我不知所措,将不胜感激任何想法。 问题

  • 问题内容: 我正在使用Sencha Touch 2应用程序(包装在PhoneGap中)到远程PHP服务器。 服务器的响应如下: XMLHttpRequest无法加载http://nqatalog.negroesquisso.pt/login.php。原产地不被访问控制允许来源允许的。 我该如何解决这个问题? 问题答案: 不久前,我写了一篇有关此问题的文章Cross Domain AJAX 。 如果

  • 问题内容: 我正在Ajax.request使用Sencha Touch 2应用程序(包装在PhoneGap中)到远程PHP服务器。 服务器的响应如下: XMLHttpRequest无法加载http://nqatalog.negroesquisso.pt/login.php。原产地不被访问控制允许来源允许的。 我该如何解决这个问题? 问题答案: 如果您控制响应服务器,最简单的方法是为以下项添加响应标