1

URL への POST 要求としてコマンド ライン スクリプトから URL を開くにはどうすればよいですか? Linux、Windows、および MacOS でこれを実行したいので、これを行うクロスプラットフォームの方法

これらのそれぞれについて、次を使用して URL への GET 要求を開くことができます。

  • xdg-open [url]- Linux
  • start [url]- ウィンドウズ
  • open [url]- マックOS

...しかし、POST リクエストを実行する方法がわかりません。それは可能ですか?

また、リクエストに POST 本文を追加する方法も示していただければ幸いです。ちなみに、私が書いているスクリプトはRubyで書かれているので、OSに組み込まれているものでも、Rubyを使ったものでも構いません。

更新しました:

明確にするために、POST 要求を発行して結果を取得するだけでなく、デフォルトのブラウザーでこれを開きたいと思います。

4

3 に答える 3

0

Ruby を使用している場合は、次のNET::HTTPライブラリを使用できます: http://ruby-doc.org/stdlib-2.0/libdoc/net/http/rdoc/Net/HTTP.html

require 'net/http'
uri = URI('http://www.example.com/search.cgi')
res = Net::HTTP.post_form(uri, 'q' => 'ruby', 'max' => '50')
puts res.body
于 2013-03-28T19:52:12.943 に答える
0

申し訳ありませんが、ブラウザー間およびオペレーティング システム間でこれを行う信頼できる方法はありません。これは、IE チームが IE8 でアクセラレータを構築する際に多くの時間を費やしたトピックです。

最も近い方法は、自動送信フォーム (または XmlHttpRequest) を持つ HTML ページをディスクに書き込み、ブラウザーを呼び出してフォームを送信するページをロードすることです。これにより、ブラウザから送信することが合法なフォームのみを送信するようにコードが制限されます (たとえば、可能なコンテンツ タイプのみなど)。

于 2013-03-28T20:58:02.657 に答える