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

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

新規登録して質問してみよう
ただいま回答率
85.50%
Facebook Graph API

Facebook Graph APIとは Facebookのグラフデータベース用のAPIであり、対応言語はPHP、Perl、ActionScript、JavaScriptなどがあります。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

PHP

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

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

Q&A

1回答

2116閲覧

本番環境の場合にFacebook Graph APIでログインが出来ない問題について

Zephyranthes

総合スコア28

Facebook Graph API

Facebook Graph APIとは Facebookのグラフデータベース用のAPIであり、対応言語はPHP、Perl、ActionScript、JavaScriptなどがあります。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

PHP

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

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

1グッド

0クリップ

投稿2015/11/14 10:22

編集2022/01/12 10:55

Facebook Graph API(v2.4 or v2.5)とCakePHP(v.2.6.4)を利用して、
Facebookアカウントでログインできる機能を作っている者です。

ローカルの環境では正常に処理が完了するのですが、
どうしてか本番環境では正常に処理が完了しません。
また、本番環境ではSSLを利用していることを補足させて頂きます。

Facebook Graph APIのコールバック関数の中に次のコードを記述しているのですが、
アプリの承認をした後なので、ユーザーのIDが返ってくる筈なのに、
ユーザーがアプリを承認していない場合の値である0が返ってきます。

php

1$this->facebook = new Facebook(array( 2 'appId' => [appId], 3 'secret' => [secret], 4)); 5$fuser = $this->facebook->getUser(); // 0の値が返ってきます

また、次のようにapi関数を実行するとエラーが発生することも確認いたしました。
以下のコードは、try...catchの中に記述されております。

php

1$my = $this->facebook->api( 2 '/me?fields=id,name,email,gender,link,bio', 3 'GET', 4 array('locale' => 'ja_JP') 5); // ネットワーク関連のエラーが発生します

発生するエラーはネットワーク関連のエラーであり、内容は以下になります。

Failed to connect to xxxx:xxxx:xx:xxxx:xxxx:xxxx:x❌ Network is unreachable

以上の不具合を解消できる方法をご存知でしたら、ご教示いただきたく思います。
どうか宜しくお願いいたします。

ikuwow👍を押しています

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

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

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

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

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

guest

回答1

0

FaceBook: Failed to connect to 2a03:2880:10:1f03:face:b00c:0:26: Network is unreachable - ITJungles
これでしょうか?

これと一致するなら、
0. サーバでIPv6を有効にする。
0. graph.facebook.comのIPv4 アドレスをhostsに書く。
0. PHPが5.3以降なら、curl_setopt( $ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4 );
のいずれかで解決するようです。(3.ではうまくいかない場合もあるようです)

投稿2015/11/16 15:05

eripong

総合スコア1546

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

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

Zephyranthes

2015/12/08 07:10

ご返答が遅れてしまい申し訳ございません。 こちらの問題ですが、サーバーの設定で外部との通信が出来ない状態となっていたため、 上記のエラーが発生しておりました。 お騒がせして申し訳ございませんでした。
eripong

2015/12/08 07:21

了解です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問