问题标签 [net-http]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - 我可以在发送之前将完整的 Ruby Net::HTTP 请求作为字符串引用吗?
Net::HTTP
显然,我在 Ruby 1.9.2p290 中使用来处理一些网络调用。
我现在需要查看发送到服务器的完整请求(作为一个符合 HTTP 1.0/1.1 的长大字符串。
换句话说,我想Net::HTTP
处理生成符合 HTTP 标准的请求+正文的繁重工作,但我想使用自定义传递机制发送字符串。
Net::HTTPRequest
这里似乎没有任何有用的方法——我是否需要降低堆栈并劫持一些东西?
有谁知道一个好的库,也许除了 Net::HTTP 之外,可以提供帮助?
编辑:我也想以另一种方式做同样的事情(将字符串响应转换为Net::HTTP::*
- 尽管似乎我可以Net::HTTPResponse
自己实例化?
ruby - 使用 net-http-digest_auth 的未知算法 MD5
我正在尝试对服务器进行一些摘要授权,然后使用 nokogiri 解析生成的 HTML。我正在使用 net-http-digest_auth gem (https://github.com/drbrain/net-http-digest_auth) 进行 url 连接。一切都很好,直到我启动了 digest_auth 代码(第 20 行);它抛出一个“未知算法“MD5”错误'..
来自控制台的完整错误消息:
~/.rvm/gems/ruby-1.9.3-p194@rails32/gems/net-http-digest_auth-1.2.1/lib/net/http/digest_auth.rb:105:in 'auth_header': unknown algorithm ""MD5"" (Net::HTTP::DigestAuth::Error)
from ./server_connection.rb:20:in '<main>'
第 20 行是 auth 行:
auth = digest_auth.auth_header uri, res['www-authenticate'], 'GET'
这是我的完整代码(几乎完全逐字逐句地来自 github 链接上使用的示例代码):
通过 Chrome 的开发工具更新了这个问题以包含请求标头:
ruby-on-rails - 导轨中的链接检查器
我将以下内容存储在 rake 任务中。基本上,如果来自 url 的响应代码不是 200,我需要将“已发布”属性从 1 更新为 0。当我运行此命令时,我得到:undefined method 'request_uri' for #<URI::Generic:0x00000102136408 URL:url>
ruby-on-rails - Ruby on Rails net/http 使用 '\r\n' 发布
我需要将 Rails 中的一些数据发布到外部 ASP。
我的 curl 命令正在运行:
如何使用 net/http 执行此操作?
保持参数之间的 '\r\n' 很重要。
到目前为止我的编码:
如何设置参数?
我试过这样的事情:
但它不起作用。我需要对其进行编码,但如何编码?
我尝试使用 '\r\n': %0D%0A 的 URL 编码版本,但它不起作用。有没有办法像 curl 一样将它作为二进制发送?
谢谢。
编辑:感谢您的回答,我找到了解决方案:
set_form_data a) 编码和 b) 添加“&”我不需要。直接设置身体是解决方案。
ruby - Ruby 异步网络::HTTP?
是否Net::HTTP
支持异步语法?
我正在寻找类似下面代码的东西。
Net::HTTP
在收到来自服务器的响应(在这种情况下error
是nil
)或遇到连接到服务器的错误(在这种情况下response
是)之后,该块将在主线程上调用nil
。
以下问题提供了答案,但我正在寻找基于块的解决方案。
ruby - 如何找出 Net::HTTP 请求绑定的 IP 和端口?
我正在编写一个用于生成网络流量的应用程序,我想包括请求者的 IP 地址和端口号。我可以从 Net::HTTP 获得这些信息吗,或者是否有另一个我可以使用的包含这些信息的库。我只需要能够发出 http 请求并处理响应对象。
谢谢!
ruby - 如何从自动编码参数中停止 Net::HTTP.post_form
我正在尝试使用带有 minitest 和 Net:HTTP 的 ruby 测试 Web 服务的功能。
这段代码
将转义我试图作为参数发送到服务器的 xml。有没有办法不转义地发送它?(我无法更改服务器端代码。)
这是服务器接收到的参数
我的 test_helper.rb 非常基础
有没有人对为什么会发生这种情况以及我能做些什么有任何想法?
ruby-on-rails - 在 Rails 中允许“坏”网址
我有一个简单的脚本来检查错误的 url:
我怎样才能允许格式不正确的网址,例如:hkbfksrhf.google.com 以不使脚本崩溃并出现以下错误:
getaddrinfo:提供节点名或服务名,或未知
我只想让任务运行到最后,并打印任何/所有不是 200 和 301 http 响应的错误。
谢谢!
ruby - 检查 Ruby HTTP 响应是否成功
如何正确检查来自 Net::HTTP::Get 的响应(例如)是否“成功”(即 2xx 返回码)?可悲的是,文档似乎对这个简单的问题保持沉默。
我有:
经过一堆谷歌搜索和近乎随机的打字后,我终于确定这是可行的:
这实际上是规范的方法吗?
ruby - Ruby Mechanize、Nokogiri 和 Net::HTTP
我正在使用 Net::HTTP 处理 HTTP 请求并得到响应:
如果我必须使用 Nokogiri gem 来解析这个 HTML 响应,我会这样做:
但如果我想使用 Mechanize gem,我需要这样做:
我是否可以使用 Net::Http 获取 HTML 响应,然后使用 Mechanize gem 将其转换为 Mechanize 对象而不是使用 agent.get()
?
编辑:
绕过该agent.get()
方法的原因是因为我试图用来EventMachine::Iterator
发出并发EM-HTTP
请求。
但它不起作用。我收到一个错误:
当我使用该parse
方法时,Net::HTTP
它工作正常,我得到了 Mechanize 对象:
我parse
在使用 em-http 时是否为该方法传递了错误的参数?