Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.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
使用AJAX请求PHP文件数据_Php_Jquery_Ajax - Fatal编程技术网

使用AJAX请求PHP文件数据

使用AJAX请求PHP文件数据,php,jquery,ajax,Php,Jquery,Ajax,我试图在URL上托管的php文件上使用ajax请求。我无法从中检索数据 我的代码: Ajax请求: $.ajax({ type: "GET", url: "http://urltomysite.com/api/discogs/search.php", datatype: "html", data: dataString, success: function(data) { console.log(data); } }); Php文件: <?ph

我试图在URL上托管的php文件上使用ajax请求。我无法从中检索数据

我的代码:

Ajax请求:

  $.ajax({
  type: "GET",
  url: "http://urltomysite.com/api/discogs/search.php",
  datatype: "html",
  data: dataString,
  success: function(data) {
    console.log(data);
    }
  });
Php文件:

<?php
echo 'i am a string';
?>

控制台日志什么也不返回


有人有办法解决我的问题吗

这应该按照本节中的详细说明进行

您还可以使用简化。如果您从另一个域请求一个页面,这里可能会有类似于同源策略的其他事情。这通常意味着您需要将头添加到API中。这取决于服务器的具体情况。这里没有关于它的信息。所以我假设nginx。这意味着添加
add_头“访问控制允许源站”“请求源站域”到您的配置。更多关于CORS的信息。另一个解决方案是在PHP脚本中添加标题,例如:

header('Access-Control-Allow-Origin: client.com');
header('Access-Control-Allow-Methods: GET');
header("Access-Control-Allow-Headers: X-Requested-With");

dataString
来自哪里?它是否真的在运行PHP?
data:datastring
在这里仅用于此测试。单击
F12
键以打开。查找Network选项卡,然后尝试AJAX请求。您应该看到发送的内容和返回的内容。好的,我删除了参数“data:dataString”,并从开发人员工具中看到了网络中的ajax请求。但是请求状态是失败…你说的“失败”是什么意思?分配给该失败请求的错误消息是什么?这显然是CORS的问题。请在您的答案中添加所有澄清,而不是链接到其他问题。您是对的,这是CORS的问题,但如何解决此错误?是的,这正是我在服务器端得到的…@NicoHaase修复了答案,你能取消否决票吗?@jcalcada-atoswap-separate-origins?
$.ajax({
  type: "GET",
  url: "http://urltomysite.com/api/discogs/search.php",
  data: queryParams,
  success: function(data) {
   alert(data); // apple
  }
});
header('Access-Control-Allow-Origin: client.com');
header('Access-Control-Allow-Methods: GET');
header("Access-Control-Allow-Headers: X-Requested-With");