ダイジェスト認証を使用した Ruby マルチパート投稿イメージ
概要
私がこれを持っているとすると、Ruby 1.9.3p194を使用します
認証はダイジェスト認証です
require 'json'
require 'httpclient'
API_URL= "https://api.somewhere.com/upload"
API_KEY='blahblah'
API_SECRET ='blahlbah'
IMAGE ='someimage.png'
h=HTTPClient.new
h.set_auth(API_URL, API_KEY, API_SECRET)
File.open(IMAGE) do |file|
body = { 'image' => file}
res = h.post(API_URL, body)
p res.inspect
end
エラーが発生する
Typheous、Patron、Mechanize、Curl を試しましたが、シンプルで効果的な方法を見つけたいと思っています 例えば
curl --digest -u myusrname:password -F "[email protected]" "https://api.somewhere.com/upload"
Curl は何も投稿せず、期待どおりに動作しません。 API が投稿を受け入れることが保証されており、単純なフォームを介して必要なことを実行する単純な Web ページがあり、正常に動作します。
この先に進む最も簡単な方法が何か知っている人はいますか?
解決策
それを解決し、Curbに戻りました。これは RESTful API であり、RestClient はダイジェストで何かファンキーなことをしていました。 HttpClient も空のファイルを投稿していました。カーブはそれをやった。