*

Facebookから日本語でデータ取得 (※だたしlocationは除く

公開日: : 最終更新日:2014/01/30 投稿者:raru Facebook, web技術

Facebook Graph APIを通して取得したデータがローマ字や英語で困ることがあります。
そんなときはリクエストを投げるときにqueryStringに locale=ja_JP を追加しましょう。
概ねのデータが日本語で取得出来ます。

以下サンプルになります。
※エラーケースの想定や例外処理、データチェック等は全くしていません。完全にMock的な動作検証用コードです。

MyFacebookAPI.prototype.request = function(id, successCallback){
	$.ajax({
		url: GRAPH_DOMAIN + id + "?locale=ja_JP&access_token=" + token,
		type: "get",
		dataType: "json",
		success: function(json){
			console.log(json);	
			successCallback(json);
		}
	});
}

ただし、locationに関しては日本語で取得出来ませんでした。
また気になることとして、試しに動作をさせているときに和食屋さんのサイトを開いたのですが
Facebook上では料理のジャンルが「和食」となっていますが、取得しているjsonには「日本料理」と表示されていました。

……この記事を書いている途中で気づきましたが、どうやらfacebookページを取得したときに取得出来るjsonは基本データページに表示される内容とイコールではないようですね。
Facebook Pageトップには日本料理と出ていました。

では基本情報にある「和食」という文字はどこから取得しているのでしょうね。
あたりをつけて調査するしかなさそうです。

余談ですが、どうやらFacebook Graph APIを簡易に使用する為のFacebook SDKというものがあるようです。
phpとjavascriptのものがあるみたいです(たぶん他もある
今回私は自分でクラス(に近い何か)を生成してjsで書いていますが例外処理等の実装工数を考えると多分SDKを使う方が良いでしょう。

関連記事

no image

PHPでXMLをnamespaceを利用したxpathでnode取得

PHPでxmlを読み込んでxpathでnodeを取得して見たいと思います。 今回はyahooの形態

記事を読む

no image

Facebook APIを試してみました

Facebook APIが気になったのでちょっと試してみました。 まず私が勘違いしていたこと

記事を読む

no image

PHPのcURLを利用してAPIをGET/POSTで叩く

PHPからcURLを利用してhttpのget, postで問い合わせを行ってみます。 今回はYAH

記事を読む

no image

WebRTC + Node によるルーム機能付きビデオチャット 1

現在googleで調べても日本語では微妙にかゆいところに手が届かないWebRTCと Socket.

記事を読む

no image

socket.ioとwebRTCでビデオチャット

現在作成したいものがあるために、その予行演習として nodeのsocket.ioとwebRTC機能

記事を読む

no image

要求されたアクションを実行するには、WordPress が Web サーバーにアクセスする必要があります。

wordpressの更新を行おうとした時の上記のエラーが発生した場合に、いくつか対策方法があります。

記事を読む

no image

IEとchromeでbeforeunloadをaタグのhrefに反応させずに利用……できなかった

今回beforeunloadが面倒な動きをしていたので調査&ある程度都合よくしてみました。 してみ

記事を読む

no image

Javascript パターン

最近更新を行なえるほど技術を追っていませんが、日々の電車での移動時間に本を読んでいます。 2駅乗っ

記事を読む

no image

Laravelでルーティングからview表示をしてみる

Laravelでのroutes.phpの設定と、bladeを利用してview表示を行います。 いろ

記事を読む

no image

MAMPでLaravelを動作させる

先日laravelをMAMPのhtdocsに配置しましたが、当然それでは動かなかったので設定しました

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

PAGE TOP ↑