Firebase 实时数据库 php curl "Unauthorized request" /auth 问题



我正在尝试从Firebase DB获取数据,但是由于我第一次使用它,所以我有点卡住。这是我正在使用的代码:

$url = 'https://PROJECT_ID.firebaseio.com/runs/upcoming.json';
$token ='SERVER_KEY_TOKEN';
$headers = array(
    'Content-Type:application/json',
    'Authorization: Bearer '.$token
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url . "?access_token=" . $token);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
curl_close($ch); 

但是我得到的响应是"错误":"未授权请求。" 。我在文档中看到我必须添加范围https://www.googleapis.com/auth/userinfo.email,但我不知道我尝试了多种方法而无用。任何帮助将不胜感激。

我也尝试使用旧服务器密钥和" auth = $ token",但它也无法正常工作,但是即使使用urlencode((

,获得"无法解析auth token">

找到了问题。不使用正确的服务器密钥/秘密。您可以在此处查看在哪里可以找到正确的一个:firebase-我的帐户在新控制台中的秘密在哪里?

kreait有一个很棒的库,可以让您在PHP中使用firebasehttps://github.com/kreait/firebase-php

https://firebase-php.readthedocs.io/en/latest/https://github.com/samarrizvi/firebase-php-example

最新更新