Javascript 由于CORS策略的原因,无法显示值

Javascript 由于CORS策略的原因,无法显示值,javascript,apache,.htaccess,cors,Javascript,Apache,.htaccess,Cors,我有一个运行在v4.3.6上的Invision社区论坛,有两个主题。 我正在开发一个新的,我想显示json数据库提供的在线/总成员 为此,我制作了一个仅适用于旧主题的脚本: <p style="margin: 0;"> Online <img alt="on.svg" src="https://www.xxxxxx.xxxxx/forum/uploads/on.svg" style="width:8p

我有一个运行在v4.3.6上的Invision社区论坛,有两个主题。 我正在开发一个新的,我想显示json数据库提供的在线/总成员

为此,我制作了一个仅适用于旧主题的脚本:

<p style="margin: 0;">
    Online <img alt="on.svg" src="https://www.xxxxxx.xxxxx/forum/uploads/on.svg" style="width:8px; margin: 0 0 3px 0;"><span id="d-online"></span> | Membri &icirc;n total <img alt="total.svg" src="https://www.xxxxxx.xxxxxx/forum/uploads/total.svg" style="width: 8px; margin: 0 0 3px 0;"><span id="d-total"></span>
</p>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><script type="text/javascript">
$(document).ready(function(){
  $.getJSON('https://XXXXXXXXXX.xyz/morpheus/db.json', function(jd) {
    $('#d-online').append("&nbsp;", jd.online);
    $('#d-total').append("&nbsp;", jd.total);
 });
});
</script>
但它根本不起作用,错误仍然会出现。
我尝试将承载该db.json的网站作为源站,而不是
*
访问控制允许源站字段上的
*
,但没有成功。
所以我试着把htaccess文件放在论坛所在的/forum/文件夹中,但什么也没有

我试着按照上面的步骤进行操作,但是javascript和php都不起作用

错误:

Access to XMLHttpRequest at 'https://xxxxxxxxxx.xyz/morpheus/db.json?csrfKey=3e4139dc5b1b138ab0bcbdf7d20e4735' from origin 'https://www.xxxxxxxxxx.ro' has been blocked by CORS policy: Request header field X-Requested-With is not allowed by Access-Control-Allow-Headers in preflight response.
以下是chrome控制台中
db.json
标题的一些屏幕截图:


如何解决此问题?

要解决此类问题,我喜欢使用两个单独的工具:

  • 浏览器路由跟踪器,可满足您的所有网络和CORS检查需求
  • 一种配置必要标头和身份验证配置的简单方法,以确保您拥有访问必要数据的所有正确参数
在浏览器的网络控制台中检查网络流量。查看
选项
请求的请求和响应标题。发布截图如果你愿意,我添加了一些截图;那些是正确的吗?是的,那就是我想要的。您是否已确保安装并启用Apache headers模块?也许可以尝试使用
标题始终设置…
而不是
标题添加
标题始终设置
不起作用。我不知道是否安装并启用了ApacheHeaders模块,但我假设是的,因为在另一个主题上,脚本工作得非常好。另外,我没有ssh访问权限,因为我的webhost没有提供,所以我无法检查模块是否已启用……您还需要让Apache以正确的方式处理选项请求。请参阅中的答案,并查看更广泛的操作方法。
Access to XMLHttpRequest at 'https://xxxxxxxxxx.xyz/morpheus/db.json?csrfKey=3e4139dc5b1b138ab0bcbdf7d20e4735' from origin 'https://www.xxxxxxxxxx.ro' has been blocked by CORS policy: Request header field X-Requested-With is not allowed by Access-Control-Allow-Headers in preflight response.