我尝试使用google places API添加地点。
启用了API IS ,API密钥有效。这是我的代码:
$url = "https://maps.googleapis.com/maps/api/place/add/json?key=MYKEY";
$content = json_encode('{
"location": {
"lat": 55.9868532,
"lng": -4.5780577
},
"accuracy": 50,
"name": "Home Made Pizza",
"types": ["other"],
"website": "http://example.com",
"language": "en-AU"
}');
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER,
array("Content-type: application/json"));
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $content);
$json_response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ( $status != 201 ) {
die("response $json_response");
};
curl_close($curl);
$response = json_decode($json_response);
我得到的回应是
response { "status" : "REQUEST_DENIED" }
帮助: - )
答案 0 :(得分:0)
根据此thread,确保您已在控制台中启用了API。
您正在使用http(s)来调用Google API,您的html也是在http(s)下托管的。如果没有,请尝试将google网址更改为http。
否则其他所有其他东西看起来都不错,所以这让我觉得你可能想再次检查你的api控制台,转到服务并检查你的' Places API'打开了。
您还可以尝试将端口地址更改为443以从Places API
获取响应
以下是一些可能也有帮助的链接:
答案 1 :(得分:0)
这里的问题是我正在使用" json_encode"在json。
我不需要对其进行编码,这是一个错误。
故事的士气,不是Json_encode Json。