0
require 'net/http'
require 'uri'
postData = Net::HTTP.post_form(URI.parse('http://localhost/restapi/index.php/api/posts'), 
                           {'id'=>9,'firstname'=>"test","lastname"=>"test"})
puts postData.body

如何以 JSON 格式发送数据?

@toSend = {"id" =>5,"firstname" => "anurag","lastname" => "arya"}

我也试过这个,但没有奏效:

@toSend.to_json

例子:

require 'rubygems'
require 'net/http'
require 'uri'
require 'json'

url = "http://localhost/restapi/index.php/api/posts"
uri = URI.parse(url)
data = {"id"=>11,                                          
              "firstname"=>"PWD","lastname"=>"last"}     

headers = {'Content-Type' =>'application/json',               
                     'Accept-Encoding'=> "gzip,deflate",
                     'Accept' => "application/json"}

http = Net::HTTP.new(uri.host,uri.port)   # Creates a http object
#http.use_ssl = true                                          # When using https
#http.verify_mode = OpenSSL::SSL::VERIFY_NONE
response = http.post(uri.path,data.to_json,headers)
puts response.code
puts response.body
4

1 回答 1

-1
postData=Net::HTTP.post_form(URI.parse('http://localhost/oecprashant/yiiIndex.php/api/rubyREST'), 
                           {'data'=>jsonData})
于 2013-05-04T10:32:28.733 回答