InstagramのAPIで取得している写真が表示されない件

昨日、というか本日未明にInstgramに写真を4連投しました。

matsudamさん(@matsudam)が投稿した写真 -

とろろ

matsudamさん(@matsudam)が投稿した写真 -

とうふ

matsudamさん(@matsudam)が投稿した写真 -

えのき

matsudamさん(@matsudam)が投稿した写真 -

んで、このサイトのトップにInstagramにPOSTした写真をAPIで取得してサムネ表示してるんですが、上記の4つの写真が反映されませんでした。

はて?と思って調べたところ、上記の写真にキャプションつけずに投稿したのが原因でした。今はキャプション入れています。

で、その原因となったコードが以下の部分。

for (var i = 0, length = 6; j < length; i++) {
	var d = data.data[i];
	if(d.caption == null){
		continue;
	}

	var ts = d.caption.created_time;
     :
}

captionがNULLの写真を処理しないようにしています。これはInstagramで写真を削除した際に、APIで空のデータが取得できてしまう事象に対する処置で追加したものです。

instagramで写真を削除した場合のAPIの挙動(2013/08/28)

この処理のせいで、キャプションをつけなかった写真の表示をスキップしているようです。

ってことで、Instagramでキャプションつけたらちゃんと表示されました。

が!

caption.created_timeというパラメータはもしかして写真の日付じゃなくてキャプションが登録された日付なのかしら?
キャプションつけなかったって写真の登録日付まで取れなくなるの困るから。

って思ってみてみたけど、Instagramに写真を登録した日付でしたw

よし、これはいつか直そう。
「いつかやろうはバカやろう」だ。