2

私の Ruby on Rails アプリでは、imdb gem (https://rubygems.org/gems/imdb) を使用してタイトルで映画を検索し、ポスターの URL を取得して、データベースにある映画モデルに追加します。次に、私の見解では、その URL を画像ソース タグに入れ、画像をユーザーに表示します。

アプリケーションをローカルで実行しているときは問題ありませんが、Heroku にデプロイすると、いくつかの画像が正常にレンダリングされることがありますが、ほとんどの場合、正しく表示されません。複数のブラウザーを試してみましたが、画像を読み込もうとすると、「参照が拒否されました」というメッセージが表示されます。

You don't have permission to access "[poster url here]" on this server. Reference #[some ref. number here]

これを修正するにはどうすればよいですか?アプリケーションからのリクエストが多すぎるか、データを取得するために必要な資格情報がアプリケーションにないか、または両方の組み合わせが原因で、IMDB サーバーがアクセスを拒否しているためだと思います。これをまったくバイパスする方法はありますか?

4

1 に答える 1

9

IMDB は、サイトから他のサイトへの画像の直接リンクをブロックします。この前の質問がトピックをカバーしていると思います。

これを回避する最も簡単な方法は、IMDB のコピーをリンクするのではなく、イメージをダウンロードして自分でホストすることです。または、別の映画 DB を調査して、必要なものを提供できるかどうかを確認することもできます。IMDB API に関するこの質問への回答には、いくつかの回答がリストされています。Movie DB APIは良い賭けのようです。

于 2012-06-18T00:51:50.543 に答える