小编Igo*_*nzi的帖子

如何使用Ruby gem通过HTTP请求发送二进制数据?

我试图找到一种方法来重现在有效负载中发送二进制数据的HTTP请求以及设置Content-Type: binary标头,如下面的cURL命令:

echo -e '\x14\x00\x00\x00\x70\x69\x6e\x67\x00\x00' | curl -X POST \
-H 'Content-Type: binary' \
-H 'Accept: */*' \
-H 'Accept-Encoding: gzip,deflate,sdch' \
-H 'Accept-Language: en-US,en;q=0.8,pt;q=0.6' \
-H 'Cookie: JSESSIONID=m1q1hkaptxcqjuvruo5qugpf' \
--data-binary @- \
--url 'http://202.12.53.123' \
--trace-ascii /dev/stdout
Run Code Online (Sandbox Code Playgroud)

我已经尝试过使用REST客户端(https://github.com/rest-client/rest-client)和HTTPClient(https://github.com/nahi/httpclient),但没有成功.使用下面的代码服务器使用HTTP 500进行响应.有没有人在之前完成它,或者它不可能用于设计宝石的目的?

Ruby代码:

require 'rest-client'
request = RestClient::Request.new(
  :method => :post, 
  :url => 'http://202.12.53.123', 
  :payload => %w[14 00 00 00 70 69 6e 67 00 00], 
  :headers => {
    :content_type => :binary,
    :accept => '*/*',
    :accept_encoding …
Run Code Online (Sandbox Code Playgroud)

ruby http

7
推荐指数
1
解决办法
8145
查看次数

标签 统计

http ×1

ruby ×1