Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 访问控制允许来源:所有用户仅访问一个站点_Javascript_Php_Json_Apache_Server - Fatal编程技术网

Javascript 访问控制允许来源:所有用户仅访问一个站点

Javascript 访问控制允许来源:所有用户仅访问一个站点,javascript,php,json,apache,server,Javascript,Php,Json,Apache,Server,我目前正在编写一个php网站,它从我的服务器的json文件中读取某些值。 现在,当我向我的服务器请求xmlhttp请求时,我在控制台中得到了访问控制允许源错误。我已经发现我必须设置访问控制允许源代码:*;在我的Apache配置中,但我不想使用*,因为我不想让每个人都访问我的网站。那么,我怎样才能给每个客户端一个json文件的权限呢 var requestURL = 'https://myWebsite/blabla.json'; var request = new XMLHttpRequest(

我目前正在编写一个php网站,它从我的服务器的json文件中读取某些值。 现在,当我向我的服务器请求xmlhttp请求时,我在控制台中得到了访问控制允许源错误。我已经发现我必须设置访问控制允许源代码:*;在我的Apache配置中,但我不想使用*,因为我不想让每个人都访问我的网站。那么,我怎样才能给每个客户端一个json文件的权限呢

var requestURL = 'https://myWebsite/blabla.json';
var request = new XMLHttpRequest();
request.open('GET', requestURL);
request.responseType = 'json';
request.send();

request.onload = function() {
  var response = request.response;
  jackpot = response.items[0].value;

  var inner = document.getElementById("myid");
inner.innerHTML = jackpot+" EURO";
这是我的js代码,我总是得到错误,除了我使用了Access control allow origin:*,我不想使用它,因为它不保存


请注意,我对网页编码不太熟悉,所以我不是真正的专业人士。对不起。

在您的PHP后端,只允许您的域进行
访问控制允许源代码
而不是
*
。因此,它将是安全的。

您必须列出允许向服务器URL发出跨域请求的URL(在本上下文中称为“来源”),而不是*。从这些来源之一加载的任何网页都将能够发出跨域请求。(事实上,你可能还需要一些其他的标题,并不总是那么简单。我可以给你更多信息。是的,我知道,但我还不知道哪些网站将包含我的脚本,所以我需要给每个人访问权限,但仅限于这一个json文件,而不是我的网站。“但仅限于这一个json文件”…在这种情况下,您必须检测正在请求的URL,并且仅在请求该URL时发出访问控制标题。另外,“我需要给每个人访问权限”和“我不想使用*因为我不想给每个人访问权限”直接相互矛盾。请决定您想要实现什么。或者您想让每个人都访问一个文件,或者您想让一些站点访问一个或多个文件。那么我必须在哪里设置访问控制允许源属性?在php脚本中?我目前在apache配置中设置了它。但它也是pos吗脚本中的sible?是的,我已经知道了,但我还不知道哪些站点将包含这个js脚本,所以我不能列出它们,因为我还不知道它们,所以我想让每个人都可以访问,但只访问这个json文件,而不是hole网站。