web-dev-qa-db-fra.com

Comment appeler les fonctions appelables Firebase avec HTTP?

Je me suis rendu compte que les nouvelles Callable Cloud Functions peuvent toujours être appelées comme si elles étaient événements HTTP , c'est-à-dire qu'elles peuvent toujours être atteintes sous http://us-central1-$projectname.cloudfunctions.net/$functionname. En faisant cela, je reçois un message d'erreur dans mon journal des fonctions cloud :

Request has invalid method. GET 

Cela signifie que HTTP-GET ne fonctionne pas, mais existe-t-il un moyen d'appeler les fonctions? Peut-être qu'ils utilisent HTTP-CONNECT .

EDIT: Les détails du protocole ont été officiellement documentés maintenant.

Les fonctions HTTPS Callable doivent être appelées à l'aide de la méthode POST, Content-Type doit être application/json ou application/json; charset=utf-8, et le corps doit contenir un champ appelé data pour que les données soient transmises à la méthode.

Exemple de corps:

{
    "data": {
        "aString": "some string",
        "anInt": 57,
        "aFloat": 1.23,
    }
}

Si vous appelez une fonction en créant votre propre requête http, vous trouverez peut-être plus flexible d'utiliser une fonction HTTPS standard à la place.

22
bklimt