Отслеживать Push-уведомления с помощью PHP

Я использую Parse для отправки уведомлений iOS и Android. Но я хочу сделать это с моего сайта.

Я нашел это в документах Parse:

Чтобы отправить push-уведомление, отправьте запрос POST на https://api.parse.com/1/push с заголовком Content-Type, установленным в application / json. Простое оповещение можно отправить на устройства Android на глобальном широковещательном канале, используя следующую команду:

curl -X POST \

-H "X-Parse-Application-Id: $ {APPLICATION_ID}" \

-H "X-Parse-REST-API-ключ: $ {REST_API_KEY}" \

-H "Content-Type: application / json" \

-d '{"channel": "", \

"type": "android", \ "expiry": 1451606400, \ "data": { "alert": "greetings programs" } }' \ 

https://api.parse.com/1/push

Кто может помочь мне создать PHP-файл, чтобы опубликовать это? Благодаря!

Переведя кривую командной строки в PHP, вы получаете что-то вроде строк

 <?php $url = 'https://api.parse.com/1/push'; $data = array( 'channel' => '', 'type' => 'android', 'expiry' => 1451606400, 'data' => array( 'alert' => 'greetings programs', ), ); $_data = json_encode($data); $headers = array( 'X-Parse-Application-Id: ' . $APPLICATION_ID, 'X-Parse-REST-API-Key: ' . $REST_API_KEY, 'Content-Type: application/json', 'Content-Length: ' . strlen($_data), ); $curl = curl_init($url); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $_data); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_exec($curl); 

ОБНОВИТЬ

 <?php $APPLICATION_ID = "your-app-id"; $REST_API_KEY = "your-api-key"; $MESSAGE = "your-alert-message"; if (!empty($_POST)) { $errors = array(); foreach (array('app' => 'APPLICATION_ID', 'api' => 'REST_API_KEY', 'body' => 'MESSAGE') as $key => $var) { if (empty($_POST[$key])) { $errors[$var] = true; } else { $$var = $_POST[$key]; } } if (!$errors) { $url = 'https://api.parse.com/1/push'; $data = array( 'channel' => '', 'type' => 'android', 'expiry' => 1451606400, 'data' => array( 'alert' => $MESSAGE, ), ); $_data = json_encode($data); $headers = array( 'X-Parse-Application-Id: ' . $APPLICATION_ID, 'X-Parse-REST-API-Key: ' . $REST_API_KEY, 'Content-Type: application/json', 'Content-Length: ' . strlen($_data), ); $curl = curl_init($url); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $_data); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $response = curl_exec($curl); } } ?><!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de"> <head> <meta charset="utf-8" /> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>Parse API</title> </head> <body> <?php if (isset($response)) { echo '<h2>Response from Parse API</h2>'; echo '<pre>' . htmlspecialchars($response) . '</pre>'; echo '<hr>'; } elseif ($_POST) { echo '<h2>Error!</h2>'; echo '<pre>'; var_dump($APPLICATION_ID, $REST_API_KEY, $MESSAGE); echo '</pre>'; } ?> <h2>Send Message to Parse API</h2> <form id="parse" action="" method="post" accept-encoding="UTF-8"> <p> <label for="app">APPLICATION_ID</label> <input type="text" name="app" id="app" value="<?php echo htmlspecialchars($APPLICATION_ID); ?>"> </p> <p> <label for="api">REST_API_KEY</label> <input type="text" name="api" id="api" value="<?php echo htmlspecialchars($REST_API_KEY); ?>"> </p> <p> <label for="api">REST_API_KEY</label> <textarea name="body" id="body"><?php echo htmlspecialchars($REST_API_KEY); ?></textarea> </p> <p> <input type="submit" value="send"> </p> </form> </body> </html> 

При этом на ваш неустановленный вопрос следует ответить. Если вы все еще не можете понять, как это сделать, вам следует серьезно подумать о том, чтобы изучить некоторые веб-сайты или рабочие задания. Это самая основная вещь, которую вы можете сделать.

Для меня это похоже на то, что вам нужно сделать простой HTTP-запрос в формате json. Вы можете сделать это в javascript через ajax или с помощью расширения curl в php.

«-H» – это, вероятно, заголовок, -d обозначает данные в формате json.