Ruby on Rails

トップ > チップス > Ruby on Rails
2016-05-22, rails

ヘッダにContent-lengthをつける

send_dataやsend_fileで画像などのデータを返す際に「Content-length」がヘッダに自動ではついてくれないようです。ブラウザで閲覧する分には問題ないのですが、Open Graph Debuggerでは以下のようなエラーを返されてしまうことがあります(何度かリロードするとうまくいったりもするのですが)。

Provided og:image, https://360.lmlab.net/pictures/23 could not be downloaded because it exceeded the maximum allowed sized of 8Mb or your server was too slow to respond.

以下のように明示的にヘッダに値を与えてあげることができます。

response.headers['Content-Length'] = @file.size.to_s

参考URL

この記事は役に立ちましたか?