[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: Wikipedia でログインできません



;; とっても反応遅くてごめんなさい。

>>>>> In [emacs-w3m : No.05684] 
>>>>>	Yoichi Hirai <yoira@ff.freeserve.ne.jp> wrote:

> http://ja.wikipedia.org/w/wiki.phtml?title=%E7%89%B9%E5%88%A5:Userlogin
> 中に、
> <form id="userlogin" method="post" action="/w/wiki.phtml?title=特別:Userlogin&amp;action=submit"> ... </form>
> というフォームがあります。

> そのフォームのアクションは、「特別」を「%E7%89%B9%E5%88%A5」に変換した、
> http://ja.wikipedia.org/w/wiki.phtml?title=%E7%89%B9%E5%88%A5:Userlogin
> であるべきなのに、emacs-w3mからsubmitすると、
> http://ja.wikipedia.org/w/wiki.phtml?title=%3F%3F:Userlogin
> をアクションとしているように動作しているようです。

> URIの中の「特別」という文字が問題を引き起こしているようです。
> 今のところ仕様なのでしょうか。

> w3m-compile-options
>  => ("lang=en" "image" "color" "ansi-color" "mouse" "gpm" "menu" "cookie" "ssl" "ssl-verify" "external-uri-loader" "w3mmailer" "nntp" "gopher" "ipv6" "alarm" "mark" "migemo")

lang=en である w3m を利用の場合は、仕様となります。
実際には以下のようなことが起きています。

1) emacs-w3m の方で日本語を実体参照 "&#x7279;&#x5225;" にして w3m に渡す。
2) w3m ではタグ中の実体参照はデコードしようとする。
   しかし、日本語等に対応していないため "??" となってしまう。
3) emacs-w3m では URI 中の "??" を "%3f%3f" にエンコードする。

おそらく --enable-japanese を有効にして作られた w3m などであれば
問題無いとは思います。