Ruby:带有JSON正文的PUT请求? [英] Ruby: PUT Request with JSON body?

查看:133
本文介绍了Ruby:带有JSON正文的PUT请求?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要使用ruby创建一个 HTTP PUT请求.

I need to create an HTTP PUT request using ruby.

该请求具有 JSON正文

我能够使用以下方法生成JSON正文:

I was able to generate the JSON body using:

require 'rubygems'
require 'json'
jsonbody = JSON.generate["message"=>"test","user"=>"user1"]

我需要将此PUT请求发送到url:

I need to send this PUT request to the url:

require 'open-uri'
url = URI.parse('http://www.data.com?access_token=123')

有人可以告诉我如何在Ruby中做到这一点吗?

Can someone please tell me how I can do this in Ruby?

推荐答案

使用 restclient ( gem install rest -client ):

require 'rubygems'
require 'rest_client'
require 'json'

jdata = JSON.generate(["test"])
RestClient.put 'http://localhost:4567/users/123', jdata, {:content_type => :json}

针对以下 sinatra 服务:

require 'sinatra'
require 'json'

put '/users/:id' do |n|
  data = JSON.parse(request.body.read)
  "Got #{data} for user #{n}"
end

在我的计算机上工作.

这篇关于Ruby:带有JSON正文的PUT请求?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆