我有一些PHP代码可以将一个位置添加到google places中,但是我得到了一个REQUEST_DENIED错误,我不知道为什么:
$data = array(
"location" => array("lat"=>floatval(trim($latlng[1])),"lng"=>floatval($latlng[0])),
"accuracy" => 50,
"name" => urlencode($edtName),
"types" => array(urlencode($cmbType[0]))
);
echo "sending to google:<br>";
echo json_encode($data);
$ch = curl_init();
$post_values = json_encode( $data );
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($ch, CURLOPT_URL, 'https://maps.googleapis.com/maps/api/place/add/json?sensor=false&key=xxx');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_values);
$data = curl_exec($ch);
if(!curl_errno($ch))
{
echo 'Received raw data' . $data;
}我检查了我的google API密钥,并尝试了两种类型:“用于浏览器应用程序的密钥(带引用)”和“用于服务器应用程序的密钥(带IP锁定)”,但两者的结果相同
有没有办法获得更多关于我的请求被拒绝的原因的信息?错误的动作还是错误的键?
这是发送给google的数据:
{"location":{"lat":4.63762250793,"lng":51.148788446},"accuracy":50,"name":"Binnenspeeltuin+Het+Fort%2C+Kessel","types":["amusement_park"]}发布于 2012-09-12 15:16:07
谢谢你的建议,我终于发现我做错了:
在Google的“服务器应用程序密钥(带IP锁定)”的定义中,我填写了服务器的Ip地址。我认为这是一个xtra安全,这个密钥只能从那个服务器使用,但它是一个客户端IP检查器。
所以我清除了IP-area,现在它工作正常。
谢谢
https://stackoverflow.com/questions/12370692
复制相似问题