Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json Rails 5.1-net/http PUT请求_Json_Ruby_Put_Net Http - Fatal编程技术网

Json Rails 5.1-net/http PUT请求

Json Rails 5.1-net/http PUT请求,json,ruby,put,net-http,Json,Ruby,Put,Net Http,刚接触Rails 5.1,尝试使用net/http和uri发送PUT请求,不确定参数设置是否正确 需要将['Authorization']放在标题中 def put_function uri = URI.parse('https://api.url.com/venues/' + ENV['VENUE_ID'] + '/request') params = { 'email' => request.email, 'notes' =>

刚接触Rails 5.1,尝试使用net/http和uri发送PUT请求,不确定参数设置是否正确

需要将['Authorization']放在标题中

def put_function
  uri = URI.parse('https://api.url.com/venues/' + ENV['VENUE_ID'] + '/request')
  params = { 'email'      => request.email,
             'notes'      => request.comments }

  req = Net::HTTP::Put.new(uri)
  req.body = params
  req.authorization = ENV['AUTH_CODE']

  p req

  data = JSON.parse(req.body)
  p data
end

除非您确定SSL配置错误,
http.verify\u mode=OpenSSL::SSL::verify\u NONE
通常不是一个好计划。
require 'uri'
require 'net/http'

url = URI("https://api.url.com/venues/" + ENV['VENUE_ID'] + "/request?email=example@email.com&notes=test")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Put.new(url)
request["authorization"] = ENV['AUTH_CODE']
request["cache-control"] = 'no-cache'

response = http.request(request)
puts response.read_body