Я хочу отправить PHP curl в Firefox push API, поэтому я попробовал что-то вроде этого:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://updates.push.services.mozilla.com/wpush/v1". "/gAAAAABX8Nj8fzlle0QZhO8Ve_b-UBdONugvPvzDRifHIMCX4kxg3nefboz4vRGZuWIhde8jd_2_1U4mUenr55blIiR2XFytEd0r6iYuLHgTIZJ2U6Kb84iNCMwkh95mKD-gi8zMoKEh" );
curl_setopt($ch, CURLOPT_PUT, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array( "TTL: 86400" ) );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
$data = curl_exec($ch);
echo $data;
Я сделал что-то неправильно ?
Это то, что я получил из моего sub.endpoint в клиенте:
https://updates.push.services.mozilla.com/wpush/v1/gAAAAABX8Nj8fzlle0QZhO8Ve_b-UBdONugvPvzDRifHIMCX4kxg3nefboz4vRGZuWIhde8jd_2_1U4mUenr55blIiR2XFytEd0r6iYuLHgTIZJ2U6Kb84iNCMwkh95mKD-gi8zMoKEh
Правильный метод HTTP, который вы должны использовать, это «POST», а не «PUT».
Для справки читайте раздел 5 стандарта Web Push.
Других решений пока нет …