ASP.NETからFlickrNETを使ってFlickr画像にアクセスする

もはや死語となりつつあるが、Web2.0の先駆けともいえるFlickr。APIからユーザー情報や写真を取り出すことができるのだが、ASP.NETからスマートにAPIを呼び出したいという時にはFlickrNetというライブラリが便利だ。

ネットを探してみるといくらでも使用方法がみつかるので、詳しい使用方法はそちらにお任せ。その他、自分で改めて構築した際の注意点を挙げておく。

[変更されたクラス]
バージョン3系統になって多少クラスが変更されたようだ。特にFlickrクラスのPhotosSearchメソッドの戻り値はPhotoCollectionとなっている。旧コードでは動かない可能性が高いので注意が必要だ。


[レンタルサーバにアプリを配置する場合]
Flickrとアクセスし、データを受信した際に一度キャッシュを作る。なにも指定しないとこれはCドライブのテンプレート領域等に書き込みにいくのだが、レンタルサーバだとアクセス権がないためにランタイムエラーが起きて落ちる。
ローカルで問題なくてもアップしたとたんにエラーを出してしまう場合はこれを疑ってみる。
解決方法は、キャッシュ設定を変更すること。これはweb.configに記述する。

まず、以下を記載。
<section name="flickrNet" type="FlickrNet.FlickrConfigurationManager,FlickrNet">

configSections直後に、キャッシュ場所の変更を追加。
<flickrnet cacheDisabled="true" cacheLocation="D:\FlickrCache\"></flickrnet>

スタックトレース等で追いかけるとIOエラーが発生していたことから気づいたのだが、
解決までしばらく悩んだ。

このブログの人気の投稿

Excel で入力した文字に勝手に取り消し線が入る

コピーした行の挿入が表示されない時はフィルタされていないかチェック