なぜ html の form は PUT / DELETE をサポートしないのか?
@Jxck_ @myakura 正にその通りで、JSなしの単体HTMLフォームでPUT/DELETEできてどれくらい嬉しいんだ、という議論だったのでは。で、僕の感覚では、action先のURL固定フォームでPUT/DELETEは使い道がなさそうと
2014-03-27 09:01:33@Jxck_ 議論と書いたけど、議論にすらなってないのかも。みんなの常識だったから。Google MapsとAjaxの衝撃って正に常識が変わった出来事だったので。Ajax以前はセキュリティのためにJavaScriptはオフにするのがリテラシが高いというような認識もあったりした。
2014-03-27 16:04:11@yohei うーん確かに Ajax は J.J.Garrett が名づけたのが 2005。その裏はちょうど XForms の策定中で、あれはスクリプトとかなくても動くことを目標にしているっぽいし、 HTML のシンプルなフォームにそれを載せる発想はなかったのかもですねぇ。
2014-03-27 16:16:21@snakajima はじめまして Jxck と申します。突然失礼します。今「なぜ html の form は PUT / DELETE をサポートしないのか?」という点を色々議論しています。途中経過はここにまとめています。http://t.co/SI8qsQLYAH (cont
2014-03-27 16:32:30@snakajima HTTP1.1 を参照する HTML4.0 の仕様にそもそも入らなかったのは、当時まだ HTML から PUT/DELETE をするユースケースが見いだせていなかったのではないかと想像していますが、実際のところよくわからず。。(cont
2014-03-27 16:32:59@snakajima 当時の仕様策定の雰囲気はどういったものだったのか、当時開発などをされていた中島さんなら、何かご存知のことがあるのではと思いお伺いしました。当時の議論などについて何かご存知なことがありましたら、お伺いできませんでしょうか?
2014-03-27 16:34:26やっぱり、当時の状況を時系列で考えると、 HTML の Form で PUT とか DELETE を入れるには抵抗があったのかもなぁ。しかしあの時代に Hixie が一蹴するのはちょっとどうなのかなと言う気はするけど。
2014-03-27 16:42:01なんか XForm 調べてても XHTML な世界は、良かっただろう気もするし、そうでもなかっただろう気もするし、なんとも言えない感じある。今は、その仕様に入ったかもしれない機能を全て JS で実装しているという点では、本質的には変わらないのかな。
2014-03-27 16:47:57@Jxck_ 実際のところは、そんなに深い意味はありません。「GETとPOSTさえあれば何でも出来る」というエンジニア目線と「GETで消去をするなんて邪道だ」というサイエンティスト目線が食い違った結果の産物です。
2014-03-28 01:17:21@Jxck_ HTTPのレイヤーでPUTやDELETEを真剣にやり始めると、「MOVEも必要だ」などと、仕様が肥大化してしまいます。HTTPのレイヤーではGETとPOSTだけにとどめて、後はURLパラメータなどでアプリケーションごとに指定すれば良いと思います。
2014-03-28 01:22:28@snakajima ありがとうございます!深い意味が無かったのであれば、HTTP/1.1 通りに GET, POST, PUT, DELETE 全部入れるというのが、エンジニア・サイエンティスト両方の目線から見て一番素直な気がするのですが、その辺はどうだったのでしょうか?
2014-03-28 01:22:35@snakajima すいません、被りました。 MOVE は WebDAV ですよね? HTML4 は HTTP1.1 を参照しているというのが、一番ひっかかるところなのです。HTTP1.1 から HTML4 まで数ヶ月しかなかったので、時間的な問題で見送ったとも想像できますが。
2014-03-28 01:24:49@Jxck_ 時間的な問題というよりも、「HTTPにPUTとDELETEは不要(GETとPOSTで十分)」と考える人が多いからだと思います。「あった方が良い」ぐらいのものを全て足したら仕様はどんどん肥大化していきますから。
2014-03-28 02:22:07http://t.co/T7ZzEOZiVp この issue のまとめは http://t.co/ejznliLHQT ここで終わっていることまで分かった。
2014-03-29 08:25:50input タグに payload 属性を増やしていて、 HTTP Header とかを form から JS 無しでいじれるようにしている。結構アグレッシブだな。
2014-03-29 08:29:28ここまでわかったことを blog にまとめました。 / “なぜ html の form は PUT / DELETE をサポートしないのか? - Block Rockin’ Codes” http://t.co/62rHUsKWpe
2014-03-29 09:06:31