なぜ html の form は PUT / DELETE をサポートしないのか?

なんで html の from は PUT / DELETE ができないのか、「セキュリティ的理由」とか「歴史的経緯」とか、わかったような分からないような説明はよく聞くけど、実際なんでなのか調べてたら色々教えてもらった話。 ここまでわかったことを blog にまとめました。 / “なぜ html の form は PUT / DELETE をサポートしないのか? - Block Rockin’ Codes” http://jxck.hatenablog.com/entry/why-form-dosent-support-put-delete
46
前へ 1 2 ・・ 7 次へ
Jxck @Jxck_

@yusuke でも PUT, DELETE って今どうなんですかねぇ。通らないと既に大変な気も。まあ硬いところは FireWall で切ったりはあるかもですが、それも今はどうなのか。。

2014-03-24 00:07:40
山本ユースケ @yusuke

@Jxck_ たぶん、WebDAV使ってない限りはGET/POST/HEADだけで済んじゃうんじゃないですかね・・。まぁプロキシにはGET以外のリクエストは右から左に流すだけに徹して欲しいとこですが・・・

2014-03-24 00:09:19
Jxck @Jxck_

@yusuke いわゆる Good Old Web でならまだしも、今は Ajax も息をするように使われるし、色々連携する際も RESTful でって時代なのに、その環境で色々まともに動くんですかねぇ。(まあ動かないなら動かない方が悪いというのが SIer の考え方ですが)

2014-03-24 00:12:06
山本ユースケ @yusuke

@Jxck_ ですねー。PUT/DELETEくらいはサポートしろよ、と思いますがTwitter APIはDELETE使えない環境では「method=delete」みたいなパラメータを付けてPOSTしろ、みたいなマナーになって最終的には全部POSTになりました・・

2014-03-24 00:14:28
山本ユースケ @yusuke

@Jxck_ URLにアクション名がある時点でRESTFulじゃないですけどね https://t.co/Xxcq75MgjZ

2014-03-24 00:15:48
Jxck @Jxck_

@yusuke ですよねぇ。。全くなんとも言えない気持ちになりますね。。

2014-03-24 00:18:39
山本ユースケ @yusuke

@Jxck_ たぶん「DELTE?そんなのうちのネットワークからは使えねーよ」みたいな環境が結構多かったのではないかと察し・・・

2014-03-24 00:19:27
Jxck @Jxck_

Form から put/delete 消して、 _method 付きの post 送ったところで何が防げてるんだろうといつも思う。ってあたりが今回の動機。

2014-03-24 00:19:34
Jxck @Jxck_

@yusuke そうだと思います。最初から Form にそれがあったら、もしかしたら通ってたかもしれないですが、ホワイトリストが普通ですよねぇ。

2014-03-24 00:20:59
atsuya 🍜ˎˊ˗ @atsuya

@jxck_ @yusuke put/deleteとかが通らない環境があるんですか?

2014-03-24 00:23:48
Jxck @Jxck_

なんこの put/delete 問題、結構気になっている人いるみたいだ。 本当に結論が出ればちゃんとまとめるので、なんか知ってたらぜひ教えて欲しいですね。

2014-03-24 00:24:52
atsuya 🍜ˎˊ˗ @atsuya

@yusuke @jxck_ これはブラウザがdeleteとかをissue出来ない話しですよね。そうではなくて、ネットワークでdeleteとかが通らない環境があるのかと思いました。

2014-03-24 00:26:19
Jxck @Jxck_

@atsuya @yusuke 自分はインフラやりませんが、「Web を支える技術」の出版イベントの質疑の時に、 @ryushi さんが「常識的な FW は GET と POST 以外通すわけ無いだろ」と突っ込んでて「そういうもんなのかぁ。。」と思ったのを結構鮮明に覚えてます。

2014-03-24 00:30:43
山本ユースケ @yusuke

@atsuya @Jxck_ いや、これTwitter WebではなくてTwitter APIなのでブラウザではなくてサーバ/クライアントサイドアプリケーションからメソッド発行できない場合の話ですよー

2014-03-24 00:31:35
Jxck @Jxck_

本当に PUT/DELETE は通らないのか、そういうのは俺らが議論しても答えはでないので、できれば Google さんとかに大規模調査してみてほしい。ついでに Upgrade 通るか問題も、そろそろ新しい結果が知りたいところ。

2014-03-24 00:35:29
atsuya 🍜ˎˊ˗ @atsuya

@yusuke @jxck_ そういうfirewallがあるんですね…。twitterの件も、そういうインフラ通ると問題が起きえて、それが故にdeleteがissue出来ないみたいなケースが無視出来ないくらいあったんですかねぇ。

2014-03-24 00:41:41
Yosuke Furukawa @yosuke_furukawa

前職にいた頃、RESTスタイルかSOAPかで議論になった時にPUT/DELETEが通らないFWもあると言われて結局SOAPになったんだけど、当時2007年とかだから今は改善されてるといいなとは思う。インフラってあんまり変わらないとかも聞くし、最近はどうなんだろ

2014-03-24 00:44:39
atsuya 🍜ˎˊ˗ @atsuya

@yusuke @jxck_ 単純に、http 1.1の定義の方がhtml4の定義より新しいからかなと思ったのですが、前者は1997で後者は1998ですね。 http://t.co/zXpXgFbAUU http://t.co/S3HF0i0zzW

2014-03-24 00:49:51
V @voluntas

@jxck_ レッツアタック!w

2014-03-24 00:51:48
山本ユースケ @yusuke

@atsuya @Jxck_ malwareがおかしなメソッドで通信してログにも残らず、みたいなことがないようGET/PUTしか通さないようなファイアウォール/プロキシが結構あるのかも。PROPFINDはWebDAV向けの拡張なのでサポートしないのはわからないでもないですけど・・

2014-03-24 00:53:47
Jxck @Jxck_

@voluntas upgrade はそろそろやるかもっていう噂です。 put/delete は、、一応聞いてみますw

2014-03-24 00:53:49
Jxck @Jxck_

@atsuya @yusuke ああ、そこがさっき話にでたところですね。そうか html4 見ても意味がないのか。ではやはり html5 でこけた理由を明日改めて見ます。

2014-03-24 00:56:05
koichik @koichik

@Jxck_ HTTP/1.0を参照してるHTML3.2がget/postに制限してるのは当然だよね?そしてHTML4とHTTP/1.1はどっちも97年。HTML4でput/deleteは制限してるというより追従を先送り(それがXForms)して現状維持にしただけじゃないかな?

2014-03-24 00:57:29
前へ 1 2 ・・ 7 次へ