小编Ale*_*lou的帖子

PHP cURL在本地工作,在AWS服务器上出错77

最新更新:脚本通过SSH shell成功运行为"php script.php",作为管理员用户.当由nginx用户运行时,curl命令无法执行https请求.所以我想这是nginx用户无法正确使用curl的问题.我检查了十分之一的配置文件,但无法找到可以更改的位置.

我正在尝试发布以下JSON

{
    "where": {
      "userId": "97"
    },
    "data": {
      "alert": "Joe Masilotti answered a question you follow",
      "badge": "Increment","eventId":"3","questionId":"8954","answerId":"977"
    }
}
Run Code Online (Sandbox Code Playgroud)

使用以下代码

$c = curl_init();
curl_setopt($c, CURLOPT_TIMEOUT, 30);
curl_setopt($c, CURLOPT_USERAGENT, 'parse.com-php-library/2.0');
curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
curl_setopt($c, CURLINFO_HEADER_OUT, true);

curl_setopt($c, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json',
    'X-Parse-Application-Id: '.$this->_appid,
    'X-Parse-REST-API-Key: '.$this->_restkey
)); 
curl_setopt($c, CURLOPT_CUSTOMREQUEST, 'POST');

$postData = str_replace(PHP_EOL,'',$args['data']);
curl_setopt($c, CURLOPT_POSTFIELDS, $postData );
$url = $this->_parseurl . $args['requestUrl'];
curl_setopt($c, CURLOPT_URL, $url);
curl_setopt($c, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($c);
Run Code Online (Sandbox Code Playgroud)

它适用于我的本地Apache.我在运行在AWS EC2上的nginx服务器上运行此命令并从cURL获取此服务器

Array
(
    [url] …
Run Code Online (Sandbox Code Playgroud)

php curl nginx amazon-ec2 parse-platform

5
推荐指数
2
解决办法
8806
查看次数

来自服务器请求的Google Places REQUEST_DENIED - 没有任何作用

经过几个小时的搜索和尝试在网上找到的每一个可能的解决方案,我不能尝试任何其他问题,所以我真的需要帮助:

我想实现一个带有地理编码结果的简单自动完成文本框,所以我在用户输入文本框时调用AJAX请求

  • 我已通过Google API控制台启用了Google地图和Google地方信息
  • 我使用服务器的IP为服务器应用程序创建了一个密钥
  • 我在服务器上运行了一个PHP文件(通过AJAX调用),它使用file_get_contents()函数将请求发送到Google Places(启用了SSL) - 也尝试使用cURL函数
  • 我要求的要求是

https://maps.googleapis.com/maps/api/place/autocomplete/json?input=MY_SEARCH_STRING&language=us&types=geocode&sensor=false&key=MY_KEY

其中MY_SEARCH_STRING是一个简单的字符串,如"London",MY_KEY是我创建的Key

  • 我得到的回应是

{"预测":[],"状态":"REQUEST_DENIED"}

  • 我也用浏览器密钥尝试了这个.还尝试创建一个新项目,重新启用服务,并创建新密钥.打开/关闭切换服务并以任意组合多次创建新密钥.没有任何效果.

  • 奇怪的是,相同的代码在我在服务器上创建的登录页面中的最后几个月工作,但是很长时间检查它,所以我不知道它什么时候停止工作.

我很感激任何帮助!谢谢.

google-places-api google-places

2
推荐指数
1
解决办法
1913
查看次数