Tag: rest

如何在Ruby中发送HTTP PUT请求?

我正在尝试向特定URL发送PUT请求,并且到目前为止还没有成功。 如果我是通过HTTP请求者GUI(例如这个)进行的 ,那么就像在以下url上执行PUT一样简单: http://www.mywebsite.com:port/Application?key=apikey&id=id&option=enable|disable 请注意,在上述请求中指定了端口号。 通过ruby代码提交请求时,我还需要这样做。 我怎样才能在Ruby中复制这样的请求?

如何使用Net :: HTTP :: Post将XML发布到RESTFUL Web服务?

我无法让这个工作,所以任何帮助将不胜感激! 基本上,request.body包含Web服务的有效XML,如下所示: Test Name 1 Some data for Unit testing …但该服务返回空XML。 请注意,返回id字段表明它实际上确实命中了数据库,但名称和描述字段为nil: 1 我已经使用Poster手动测试了RESTFUL服务,它运行正常。 这是代码: url = URI.parse(‘http://localhost:3000/someservice/’) request = Net::HTTP::Post.new(url.path) request.body = “Test Name 1Some data for Unit testing” response = Net::HTTP.start(url.host, url.port) {|http| http.request(request)} #Note this test PASSES! assert_equal ‘201 Created’, response.get_fields(‘Status’)[0] 有没有人有任何线索为什么XMLpost中的数据不会持久存在?

在ruby中rest和归来,你如何使用它们?

我刚问了一个关于回归的问题 ,它似乎和rest一样。 如何使用return,以及如何使用break,例如在您编写的实际代码中解决可以使用这些构造的问题。 我不能真正发布示例,因为我不知道如何使用它们,所以它们没有多大意义。

生成并发布基于Ruby的REST API文档

现在使用什么酷孩子来轻松解析/生成/发布REST API? 我看了一下Swagger它看起来不错,但从我的观点来看,它不适合Ruby。 也许我错了,我错过了什么,帮助将不胜感激。

使用HTTParty发布大量数据

我正在使用HTTParty使用以下代码将信息发布到服务器: this_component = {“name” => “something”, “ip” => “localhost”, “logs” => logs_to_push} payload = {“payload” => JSON.dump(this_component)} response = JSONClient.post(“http://localhost:8080/log”, :body => ”, :query => payload) 问题是,当POST实际执行时,我Connection reset by peer (Errno::ECONNRESET)消息得到Connection reset by peer (Errno::ECONNRESET) ,我很确定这是因为我的有效负载太大(因为logs_to_push是一个包含大约200个日志行的数组)它)。 我将如何重构上述内容以便成功推送此数据?

HTTP POST中的多个键/值对,其中键是相同的名称

我正在开发一个接受远程客户端数据的API,其中一些HTTP POST中的密钥几乎可以作为一个数组。 在英语中,这意味着我的服务器上有一个名为“class”的资源。 在这个意义上的一个类是学生所在的类型和教师教育的类型。当用户提交HTTP POST为他们的应用程序创建一个新类时,许多键值对看起来像: student_name:鲍勃史密斯 student_name:简史密斯 student_name:克里斯史密斯 什么是在客户端处理这个问题的最佳方法(假设客户端是cURL或ActiveResource,无论如何……)如果我的服务器是Ruby on Rails应用程序,那么在服务器端处理这个问题的方法是什么? 需要一种方法来允许具有相同名称且没有任何命名空间冲突或数据丢失的多个密钥。 我的要求必须是POST数据是urlencoded键/值对。

Office 365 Rest API – 守护程序周身份validation

我正在尝试构建一个Ruby Daemon服务来访问Office 365 rest API。 最近通过OAuth’client_credentials’流程实现了这一点,详见本博客文章: http : //blogs.msdn.com/b/exchangedev/archive/2015/01/22/building-demon-or -服务-应用程序-与办公-365-邮件日历和联系人的API-的oauth2客户端-凭据flow.aspx 我正在努力生成有效的访问令牌。 令牌端点返回给我一个JWT,但是当使用这个令牌时,我收到了一条带有此消息的401: 使用身份validation方法获取访问令牌,该身份validation方法太弱而无法访问此应用程序。 提出的auth强度为1,要求为2 我知道client_credentials流程要求您提供X.509证书,不幸的是,博客文章中的所有示例都是针对C#的。 我在请求令牌时使用生成的自签名证书和私钥来执行客户端断言。 我按照博客文章中的步骤生成证书并更新清单以使用此证书。 这是ruby代码供参考: def request_token uri = URI.parse(“https://login.windows.net/== TENANT-ID ==/oauth2/token?api-version=1.0”) https = Net::HTTP.new(uri.host, uri.port) req = Net::HTTP::Post.new(uri.request_uri) req.set_form_data( :grant_type => ‘client_credentials’, :redirect_uri => ‘http://spready.dev’, :resource => ‘https://outlook.office365.com/’, :client_id => ‘== Client ID ==’, :client_secret => ‘== Client secret ==’ ) […]