[firabase] custom login via PHP + read nodes

Costas

Administrator
Staff member
references :

Firebase Custom Login -  https://www.firebase.com/docs/security/custom-login.html

Firebase REST API -  https://www.firebase.com/docs/rest-api.html

Firebase Token Generator for PHP - https://github.com/firebase/firebase-token-generator-php

Encode and decode JSON Web Tokens (JWT) in PHP - https://github.com/firebase/php-jwt

Firebase PHP Helper Library - https://github.com/ktamas77/firebase-php

 

1-
upload to server FirebaseToken.phpJWT.php + firebaseLib.php

 

2-
 
JavaScript:
<?php
include_once "FirebaseToken.php";
require_once 'firebaseLib.php';

$secret = "dHQkvze--"; //FIREBASE SECRET
$tokenGen = new Services_FirebaseTokenGenerator($secret);
$token = $tokenGen -> createToken(array("app_user_id" => 1234, "isAdmin" => true));

$url = 'https://x.firebaseio.com/';

$fb = new fireBase($url, $token);

$response = $fb -> get('/debugNode/');
//echo $response;  //using firebaseLib by default is json, no need to use 'REST API' .json

$jsonArray = json_decode($response);

$tmp = "";
foreach ($jsonArray as $value) {
	$debugChildNode = $value; //node
	
	$tmp .= $debugChildNode -> Comment . "<br>"; //field
}

echo $tmp;

?>

the rule :

JavaScript:
       "debugNode": { 
                   ".read": "auth.isAdmin == true", 
                   ".write": "auth.isAdmin == true"
       }
 
Top