J'utilise la bibliothèque native ruby pour faire un appel API POST multipart/form-data. Dans cet appel, j'envoie json et les fichiers, mais du côté serveur, le fichier n'est pas téléchargé correctement. Parfois, il est téléchargé avec succès.Téléchargement d'un fichier PDF vers une source externe via Net :: Http dans ruby
boundary = '----WebKitFormBoundary7MA4YWxkTrZu0gW'
url = URI("http://localhost:3000/pdfs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["authorization"] = "Bearer ddghfgdjh54544fdgdfghj"
request["accept"] = 'application/json'
request["content-type"] = "multipart/form-data; boundary=#{boundary}"
request["cache-control"] = 'no-cache'
body = []
# JSON data
body << "--#{boundary}\r\nContent-Disposition: form-data;"
body << "name=\"profile\"\r\n\r\n"
body << {user: {name:"xyz",email:"[email protected]"} }.to_json
body << "\r\n"
#File data
body << "--#{boundary}\r\n"
body << "Content-Disposition: form-data;"
body << "name=\"profile\"; filename=\"#{username}.pdf\"\r\nContent-Type: application/pdf\r\n"
body << "#{File.read('/home/pdfs/profile.pdf')}\r\n"
request.body = body.join
response = http.request(request)
comment faire API POST appel avec JSON et fichiers comme multipart/form-data – santoshkumar