通过PHP发送消息时,Phonegap Push插件出现401错误



我试过这个代码。

function sendNotification( $apiKey, $registrationIdsArray, $messageData )
{   
    $headers = array("Content-Type:" . "application/json", "Authorization:" . "key=" . $apiKey);
    $data = array(
        'data' => $messageData,
        'registration_ids' => $registrationIdsArray
    );
    $ch = curl_init();
    curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers ); 
    curl_setopt( $ch, CURLOPT_URL, "https://android.googleapis.com/gcm/send" );
    curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, 0 );
    curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, 0 );
    curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
    curl_setopt( $ch, CURLOPT_POSTFIELDS, json_encode($data) );
    $response = curl_exec($ch);
    curl_close($ch);
    return $response;
}

调用这个函数:

$message      = "the test message";
$tickerText   = "ticker text message";
$contentTitle = "content title";
$contentText  = "content body";
$registrationId = 'APA91bEgsAG3vmliDnJE7jfLAOGSUv3K9p41MkNranPFV4EY0svABRax8NY5oulOHv7s3v2Ks_bQutsLLw8j4mHOr5LkrRlFfXxfs3hxxwAlxIOG7cXCB4YPhlLCDspVtImyWBL_znGgkZzEWCncV3tidHMV'; (Id is wrong here for security reasons)
$apiKey = "AIzaSyD6kZoY3Qb_1ut57IEmwdRg0JuxC42W1"; (Key is wrong here for security reasons)
$response = sendNotification( 
                $apiKey, 
                array($registrationId), 
                array('message' => $message, 'tickerText' => $tickerText, 'contentTitle' => $contentTitle, "contentText" => $contentText) );
echo $response;

现在我被卡住了。我只是用我自己的设备注册id和谷歌API密钥创建了一个PHP页面。

但它向我展示了一个错误:未经授权错误401

当我运行此URL时http://vbought.com/sendnotification.php

我甚至在GCM参考中添加了我的服务器IP和域名

.vbeught.com/

*.vbuught.com

50.87.3.82

我做错什么了吗?或者我需要知道?我只是想向我唯一的设备发送一条消息。

谢谢!(提前)

我找到了答案。答案是我不需要在GCM中定义任何东西。就像我定义了域名和IP地址一样。所以我什么都不需要做。只要把它留空,它就会像魅力一样发挥作用。。。

度过美好的一天:)

相关内容

  • 没有找到相关文章

最新更新