简体   繁体   English

如何使用Faraday gem发送XML文件并在Ruby中获取响应

[英]How to send XML file using Faraday gem and getting response in Ruby

I learning how to send http requests, and I want to send whole XML file using Faraday gem and getting response 我学习如何发送http请求,我想使用法拉第宝石发送整个XML文件并获得响应

This is what i found, how i can send a whole file using faraday (faraday gem already installed) 这就是我发现的,我如何使用法拉第发送整个文件(已安装法拉第宝石)

faraday = Faraday.new do |f|
    f.request :multipart 
    f.request :url_encoded 
    f.adapter :net_http
end
    file_io = Faraday::UploadIO.new('act.xml', 'rb')
    faraday.post('example.com', file_io)

And after that i got this message in console .....rvm/gems/ruby-2.6.2/gems/faraday-0.15.4/lib/faraday/request/url_encoded.rb:12:in `[]': odd number of arguments for Hash (ArgumentError) 之后我在控制台收到了这条消息...... rvm / gems / ruby​​-2.6.2 / gems / faraday-0.15.4 / lib / faraday / request / url_encoded.rb:12:in`[]': Hash(ArgumentError)的奇数个参数

This should work. 这应该工作。

faraday = Faraday.new do |f|
  f.request :multipart 
  f.request :url_encoded 
  f.adapter :net_http
end

payload = {xml: Faraday::UploadIO.new('act.xml', 'application/xml')}
faraday.post('http://example.com', payload)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM