我有一个运行良好的curl命令,但我需要在ruby脚本中自动执行此操作,
卷曲cmd:
curl -u usrname:pwd -X POST --data "del=false&val=100" http://localhost:1111/sample/path
我写了以下代码:
uri = URI::HTTPS.build(:host => "localhost", :port => 1111) uri.path = URI.escape("/sample/path") client = Net::HTTP.new("localhost", "1111") req = Net::HTTP::Post.new(uri.request_uri, {"User-Agent" => "UA"}) req.set_form_data({"del" => "false", "val" => "100"}) req.basic_auth("usrname", "pwd") res = client.request(req)
上面的代码工作正常,我有一个编码的URL我传递给URI.escape,这让我发布了关于错误响应的问题.Foud问题并修复它:)
最好的和简单的解决方案!
复制您的CURL代码.
转到此页面.
粘贴您的CURL代码.
要开心.
我在这个页面上测试了这个解决方
你可以直接从ruby执行curl命令
usrname = "username" pwd = "pwd" val = 100 del= false http_path = "http://localhost:1111/sample/path" puts `curl -u #{usrname}:#{pwd} -X POST --data "del=#{del}&val=#{va}" #{http_path}`
并且后面的刻度将执行系统卷曲