Любой один ищет PHP решение найти ниже , так как вы собираетесь использовать Api ключ сервера, так что не сделать это на стороне клиента
стороны клиента огненного Баз коды расслоения плотной
// Initialize Firebase
var config = {
apiKey: "xxxx",
authDomain: "yyy",
databaseURL: "zzzz",
projectId: "aaaa",
storageBucket: "bbbbb",
messagingSenderId: "ccc"
};
firebase.initializeApp(config);
const messaging = firebase.messaging();
messaging.requestPermission()
.then(function() {
console.log('Notification permission granted.');
return messaging.getToken();
})
.then(function(token) {
//send this token to server
console.log(token); // Display user token
})
.catch(function(err) { // Happen if user deney permission
console.log('Unable to get permission to notify.', err);
});
messaging.onMessage(function(payload){
console.log('onMessage',payload);
})
сервер код на стороне с помощью PHP локона
$headers = array
('Authorization: key=' . API_ACCESS_KEY,
'Content-Type: application/json');
$ch = curl_init();
// browser token you can get it via ajax from client side
$token = 'drVdtCt82qY:APA91bEZb99GvoS9knv-cp5ThVBiYGBjUwl_Ewj2tKaRFwp7HoG347utaNKbgLWmkxpGadABtIg-DspPUh5sC_bc2JrBKVw10Ejg72nYxZgD2wBU-adYJo0yi03lX22s5K2UEp6gwnMv';
curl_setopt($ch, CURLOPT_URL, "https://iid.googleapis.com/iid/v1/$token/rel/topics/testIshakTopic");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, array());
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
echo "The Result : " . $result;
Надеется, что это поможет разработчикам PHP
Спасибо, Фрэнк! Это похоже на переулок, в котором мне нужно спуститься. Есть ли что-то, что мне нужно для настройки с моим проектом Firebase, чтобы использовать API IID? Нужно ли мне заранее задавать тему где-то? Я попытался использовать эту функцию, но я получаю ошибку 401 в консоли: «Ошибка при подписке на тему: 401 - [Object Promise]». Для справки я проверил, что токен верен (я могу отправить целевое уведомление конкретному токену), и мой apiKey также настроен правильно. – Derek
О, и для дальнейшего контекста я просто изучаю Firebase. Я получил проект быстрого запуска JS-сообщений Firebase и успешно работал, поэтому, если он помогает узнать, как выглядит база кода, это то, что я использую: https://github.com/firebase/quickstart-js/дерево/мастер/сообщений. – Derek
Темы автоматически создаются, когда устройство подписывается на них или когда вы отправляете сообщение им (используя API). –