Php Curl未在我的本地服务器上发送

Php Curl未在我的本地服务器上发送,php,curl,Php,Curl,我使用下面的代码来获取用户数据,但不知道为什么在另一台服务器上使用相同的代码时,它会说无效令牌错误,并且工作正常。我检查了我的系统中是否启用了CURL。您可以在上看到下面代码的工作示例。有什么问题吗?请帮帮我。谢谢你的帮助。谢谢 $ch = curl_init(); //you will need to change the 'eric' to what the user is searching for in the manual entry section $data = array('qF

我使用下面的代码来获取用户数据,但不知道为什么在另一台服务器上使用相同的代码时,它会说无效令牌错误,并且工作正常。我检查了我的系统中是否启用了CURL。您可以在上看到下面代码的工作示例。有什么问题吗?请帮帮我。谢谢你的帮助。谢谢

$ch = curl_init();
//you will need to change the 'eric' to what the user is searching for in the manual entry section
$data = array('qFunc' => 'searchActiveStaff', 'qArgs' => 'eric');

curl_setopt($ch,CURLOPT_URL,'http://api.yfcimpact.com/yfc_dev.php/api/usa/person?' . http_build_query($data) );
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_USERPWD, "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJob3N0IjoiMTIwLjU5LjE1OS4yMzIiLCJ1c2VybmFtZSI6InJzbWl0aHR5MyIsImlkIjoxMDAwNTQwMjcwLCJpYXQiOjE0MzI4Nzk0NjQsImV4cCI6MTQzMjkwMTA2NCwicm9sZXMiOlsiUk9MRV9VU0VSIiwiUk9MRV9zZXR0aW5ncyIsIlJPTEVfcGVvcGxlIiwiUk9MRV9wZW9wbGVfYWRkX25ldyIsIlJPTEVfcGVvcGxlX2VkaXQiLCJST0xFX3BlcnNvbl9lZGl0X3Blcm1pc3Npb24iLCJST0xFX3NldHRpbmdzX3Blcm1pc3Npb25zIiwiUk9MRV9zZXR0aW5nc19jdXN0b21fZmllbGRzIiwiUk9MRV9vZmZpY2UiLCJST0xFX3NldHRpbmdzX21pbmlzdHJ5X3NpdGVzIiwiUk9MRV9zZXR0aW5nc19taW5pc3RyeV9zaXRlc19hZGQiLCJST0xFX3NldHRpbmdzX2xlZ2FsIiwiUk9MRV9wZW9wbGVfZWRpdF9saXN0IiwiUk9MRV9vZmZpY2VfZmluYW5jaWFsIiwiUk9MRV9vZmZpY2VfYnVkZ2V0X3BsYW4iLCJST0xFX29mZmljZV9taW5zdGF0cyIsIlJPTEVfc2V0dGluZ3NfZmllbGRfbGFiZWxzIiwiUk9MRV9vZmZpY2VfYmdjaGVjayIsIlJPTEVfb2ZmaWNlX3ZlaGljbGUiLCJST0xFX29mZmljZV93b3JrZXJzY29tcCIsIlJPTEVfc2V0dGluZ3NfY3VzdG9tX2ZpZWxkX2dyb3VwcyIsIlJPTEVfc2V0dGluZ3NfdGV4dCIsIlJPTEVfc2V0dGluZ3NfZW1haWwiLCJST0xFX29mZmljZV9jaGFydGVyaW5nIiwiUk9MRV9ldmVudHMiLCJST0xFX3NldHRpbmdfY3VzdG9tcXVlc3Rpb25zIl0sImZ1bGxOYW1lIjoiUm9nZXIgU21pdGgiLCJjb3JlT3JnSWQiOiI0MjcifQ.V9B-TE_72D0YYE5FAHPB_pkYGhkAGiHRQzZjTEb0Jag:" );

$json = curl_exec($ch);
$people = json_decode($json);

print "people who have eric in their name:\n";
var_export($people);
在某些API(如Facebook API)中,您注册了一个应用程序,以便每个令牌都与特定域绑定。因此,如果您使用的API具有相同的逻辑,那么所使用的令牌将绑定到服务器的域(specificpromotions.com),因此为了从不同的服务器(也称为不同的域)使用它,您必须使用单独的令牌

但是,我尝试执行您的脚本,并且从api中获取与您的链接格式完全相同的数据时没有问题


因此,在API的身份验证系统中肯定没有域绑定。因此,我认为您必须检查系统范围的配置,以找到curl不工作的原因。

您可以尝试使用curl\u error查看curl操作返回的错误:

首先检查您的系统或服务器中是否启用了curl。 您可以使用带有此代码的简单页面进行检查

<?php 
 phpinfo();
?>

令牌未绑定到任何域。我在这行curl_setopt($ch,CURLOPT_USERPWD)中添加了令牌,我执行了您的脚本,没有错误。我在上面编辑了我的评论。不知道是什么错误,我把我的Ubuntu 12升级到了14,现在我的问题已经解决了:)我希望你没有在这里显示真实的用户pwd:)
    $ch = curl_init();
    $data = array('qFunc' => 'searchActiveStaff', 'qArgs' => 'eric');
    curl_setopt($ch,CURLOPT_URL,'http://api.yfcimpact.com/yfc_dev.php/api/usa/person?' . http_build_query($data) );
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
    curl_setopt($ch, CURLOPT_USERPWD, "ag:" );    
    if(curl_exec($ch) === false)
{
    echo 'Error Details: ' . curl_error($ch);
}
else
{
    echo 'Success';
}