Androidブラウザの気持ち悪い動作

Androidのブラウザでの気持ち悪い動作を発見したのでメモ

流れ

  • ページ1
    • POSTでFORM送信
  • 隠しページ
    • 色々処理をしてLocation URLにGETで値を付与
  • ページ2
    • 値を取得

一般的なブラウザだと「ページ2」のところではREQUEST_METHODがGETで来るがAndroidのブラウザだと「ページ1」のREQUEST_METHODが優先されて、ページ2のREQUEST_METHODがPOSTになる
なんとも気持ち悪い
自動的にフォームの値をREQUEST_METHODで判別しているようなところだと意図しない結果になるので注意

もしかしたら「隠しページ」でのLocationを違うステータスコードでやれば、また違う結果になるのかもしれないけれど、検証していない