Authentication




Cancel OK
B!コメントする  2013-11-13 17:35:00 by old

画像のアップロードと画像更新での注意点

恐らく私はあと100年経ってもミジンコレベルのプログラムしか書けないでしょう。
むしろミジンコレベルに到達しているかも怪しいのでミジンコと比較するとミジンコに対して申し訳ない気持ちもある。

戒めも込めて画像のアップロードについて注意点を書いておく。

jpg画像をアップロードする場合に拡張子もチェックしている場合

jpgだけでなくjpegも確認すること


たまにjpeg拡張子があって、その画像だけアップロードできなくて困った…
この辺はmimeとかも関係してくることがあるので

image/jpg だけでなく image/jpeg もチェック

すると幸せになれるかもしれません。


次に、画像を更新する場合に「差し替え」という場合があります。
実際には別の画像になっているけど、ファイル名やなんかは全て一緒というパターンです。
この場合、ブラウザー側では「更新されていない」と勘違いしてキャッシュの画像を表示することがあります。
なのでいつまでたっても画像が変わったようには見えない現象が発生する…
データは別画像になっているにもかかわらず…

IE8なんかだとno-cacheつけてても同じ画像と判断してキャッシュ出すことがあるので画像のアドレスにランダムの値をGET値として付加することで別画像であることを強制的に認識させることにした。
(もっとスマートな方法があるのかもしれませんが…)

■対応前

sample.jpg

■対応後

sample.jpg?cash=123


このようにすることで画像のアドレスはそのままに、でもブラウザー側からしたら別アドレスのためキャッシュを使わずに更新してくれるという実に泥臭い方法で無理やり更新させることにした。

本当に地球上から1秒でも早く、1マイクロ秒でも早くIE8以下、出来ればIE9以下が消滅してくれる日を心の奥底から願っています。
そしてIE8に対応しろという糞クライアントも一緒に地球上から消え去ってくれる日を待ち望んでいます。


Android  

  • コメント
  • コメントはまだありません