Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php google place请求被拒绝_Php_Post - Fatal编程技术网

Php google place请求被拒绝

Php google place请求被拒绝,php,post,Php,Post,我有一些PHP代码可以向google places添加一个位置,但我收到了一个拒绝请求的错误,我不知道为什么: $data = array( "location" => array("lat"=>floatval(trim($latlng[1])),"lng"=>floatval($latlng[0])), "accuracy" => 50, "name" => urlencode($edtName),

我有一些PHP代码可以向google places添加一个位置,但我收到了一个拒绝请求的错误,我不知道为什么:

        $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中,我在“服务器应用程序密钥(带IP锁定)”的定义中填写了我服务器的IP地址。我认为这是一个xtra安全,该密钥只能从该服务器使用,但它是一个客户端IP检查器

所以我清除了IP区域,现在可以正常工作了


谢谢

我想说,你不必发送
内容类型:application/json
的请求头,我只是复制/粘贴了你的代码,并用我的密钥(
服务器应用的密钥(带IP锁定)
)进行了尝试,它工作得很好。什么?当您从服务器发出请求时,客户端IP是什么意思?
{"location":{"lat":4.63762250793,"lng":51.148788446},"accuracy":50,"name":"Binnenspeeltuin+Het+Fort%2C+Kessel","types":["amusement_park"]}