Google + Domain API即使在付费帐户中也会被拒绝

时间:2017-11-24 12:10:01

标签: php google-api google-plus google-api-php-client google-plus-domains

我一直试图找到这个问题的原因,因为很长一段时间没有运气:

我的付费Gmail手机帐户@ mydomain.com工作正常,直到上周,当它停止工作而没有对代码文件进行任何更改。

现在它一直显示以下错误:

[error] => stdClass Object
    (
        [errors] => Array
            (
                [0] => stdClass Object
                    (
                        [domain] => global
                        [reason] => forbidden
                        [message] => Forbidden
                    )

            )

        [code] => 403
        [message] => Forbidden
    )

这有什么原因吗?

如何解决此问题?

  

以下是我目前的代码:

$url = 'https://www.googleapis.com/plusDomains/v1/people/' . $resultUserData['google_id'] . '/activities';
            $headers = array(
                'Authorization : Bearer ' . $resultUserData['google_access_token'],
                'Content-Type : application/json',                  
            );
            $message = Mage::getStoreConfig('tab1/general/module_choose_upload_1');
            $postImage = SITE_URL.'/media/system/'.Mage::getStoreConfig('tab1/general/upload_1');

            $body = array(
                "object" => array(
                    "originalContent" => $message.$productUrl,
                    "attachments"=> array(
                        array(
                            "url"=>$postImage,
                        )
                    ),
                ),
                "access" => array(
                    "items" => array(
                        array("type" => "domain")
                    ),
                    "domainRestricted" => true
                )
            );

            $data_string = json_encode($body);
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
            curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_URL, $url);
            $file_result = curl_exec($ch);
            curl_close($ch);
            $file_result = json_decode($file_result);

请帮助!

1 个答案:

答案 0 :(得分:0)

现在已修复。问题是我使用的电子邮件ID没有Google plus配置文件。

刚刚创建了Google plus配置文件,然后尝试了上面的代码,它按预期工作。