質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Firebase

Firebaseは、Googleが提供するBasSサービスの一つ。リアルタイム通知可能、並びにアクセス制御ができるオブジェクトデータベース機能を備えます。さらに認証機能、アプリケーションのログ解析機能などの利用も可能です。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

1651閲覧

Firebase admin SDK for PHPで、認証がうまく行っていません。

hakase

総合スコア107

Firebase

Firebaseは、Googleが提供するBasSサービスの一つ。リアルタイム通知可能、並びにアクセス制御ができるオブジェクトデータベース機能を備えます。さらに認証機能、アプリケーションのログ解析機能などの利用も可能です。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2019/01/10 02:51

編集2019/01/15 02:17

こんにちは。
Firebase admin SDK for PHPで、認証がうまく行っていません。
Firebaseのアプリのプロジェクトから取得したJSON形式の秘密鍵を取得して
渡しているのですが、getMessaging();でエラーが出ます。

php

1require_once '../vendor/autoload.php'; 2 3use Kreait\Firebase\ServiceAccount; 4use Kreait\Firebase\Factory; 5use Kreait\Firebase\Messaging\Message; 6use Kreait\Firebase\Messaging\CloudMessage; 7use Kreait\Firebase\Messaging\Notification; 8 9$serviceAccount = ServiceAccount::fromJsonFile(__DIR__.'/key.json'); 10$a=new Factory; 11$firebase=$a->withServiceAccount($serviceAccount)->create(); 12var_dump($firebase); 13$messaging = $firebase->getMessaging(); 14var_dump($messaging);

Fatal error: Uncaught Kreait\Firebase\Exception\ServiceAccountDiscoveryFailed: Kreait\Firebase\ServiceAccount\Discovery\FromEnvironmentVariable: The environment variable "FIREBASE_CREDENTIALS" is not set. Kreait\Firebase\ServiceAccount\Discovery\FromEnvironmentVariable: The environment variable "GOOGLE_APPLICATION_CREDENTIALS" is not set. Kreait\Firebase\ServiceAccount\Discovery\FromGoogleWellKnownFile: The well known file is not readable or invalid cURL error 6: Couldn't resolve host 'metadata.google.internal' (see http://curl.haxx.se/libcurl/c/libcurl-errors.html) in /home/enjoy-plan/vendor/kreait/firebase-php/src/Firebase/ServiceAccount/Discoverer.php:49 Stack trace: #0 /home/enjoy-plan/vendor/kreait/firebase-php/src/Firebase/Factory.php(172): Kreait\Firebase\ServiceAccount\Discoverer->discover() #1 /home/enjoy-plan/vendor/kreait/firebase-php/src/Firebase/Factory.php(310): Kreait\Firebase\Factory->getServiceAccount() #2 /home/enjoy-plan/vendor/kreait/firebase-php/src/Firebase/Factory.php(288): Kreait\Firebase\Factory-> in /home/enjoy-plan/vendor/kreait/firebase-php/src/Firebase/ServiceAccount/Discoverer.php on line 49

こういうエラーが出ます。

大変困っています。何かアドバイスいただけないでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

何故だか分かりませんが、いろいろ試していたら、エラーが出なくなりました。参考にならなくて、すいません。理由が分かったら、シェアします。

投稿2019/01/15 02:32

hakase

総合スコア107

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問