最新更新:脚本通过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) 经过几个小时的搜索和尝试在网上找到的每一个可能的解决方案,我不能尝试任何其他问题,所以我真的需要帮助:
我想实现一个带有地理编码结果的简单自动完成文本框,所以我在用户输入文本框时调用AJAX请求
其中MY_SEARCH_STRING是一个简单的字符串,如"London",MY_KEY是我创建的Key
{"预测":[],"状态":"REQUEST_DENIED"}
我也用浏览器密钥尝试了这个.还尝试创建一个新项目,重新启用服务,并创建新密钥.打开/关闭切换服务并以任意组合多次创建新密钥.没有任何效果.
奇怪的是,相同的代码在我在服务器上创建的登录页面中的最后几个月工作,但是很长时间检查它,所以我不知道它什么时候停止工作.
我很感激任何帮助!谢谢.