Ruby rest-client file upload as multipart form data with basic authenticaion

后端 未结 4 1831
不思量自难忘°
不思量自难忘° 2021-02-05 22:02

I understand how to make an http request using basic authentication with Ruby\'s rest-client

response = RestClient::Request.new(:method => :get, :url => @b         


        
相关标签:
4条回答
  • 2021-02-05 22:20

    RestClient API seems to have changed. Here's the latest way to upload a file using basic auth:

    response = RestClient::Request.execute(
      method: :post,
      url: url,
      user: 'username',
      password: 'password',
      timeout: 600, # Optional
      payload: {
        multipart: true,
        file: File.new('/path/to/file, 'rb')
      }
    )
    
    0 讨论(0)
  • 2021-02-05 22:28

    How about using a RestClient::Payload with RestClient::Request... For an example:

    request = RestClient::Request.new(
              :method => :post,
              :url => '/data',
              :user => @sid,
              :password => @token,
              :payload => {
                :multipart => true,
                :file => File.new("/path/to/image.jpg", 'rb')
              })      
    response = request.execute
    
    0 讨论(0)
  • 2021-02-05 22:31

    Here is an example with a file and some json data:

    require 'rest-client'
    
    payload = {
      :multipart => true,
      :file => File.new('/path/to/file', 'rb'),
      :data => {foo: {bar: true}}.to_json
          }
    
    r = RestClient.post(url, payload, :authorization => token)
    
    0 讨论(0)
  • 2021-02-05 22:36

    The newest best way may be that: the link is enter link description here

      RestClient.post( url,
      {
        :transfer => {
          :path => '/foo/bar',
          :owner => 'that_guy',
          :group => 'those_guys'
        },
         :upload => {
          :file => File.new(path, 'rb')
        }
      })
    
    0 讨论(0)
提交回复
热议问题