basic authがかかったURLに対して、post_contentでファイルを送信出来ない #166

Closed
ramsydx opened this Issue May 29, 2013 · 2 comments

Projects

None yet

2 participants

@ramsydx

cl = HTTPClient.new
cl.set_auth(url,user,pass)
o = cl.post_content(url,{'file'=>StringIO.new(csv)})

としたとき、まず認証情報を付加せずに送信しようとして401となり、
認証情報を付加しなおして再送するのですがその際にStringIOの物が空になっています。
(cl.debug_dev=STDOUTで確認済み)
従いまして、basic authがかかったURLに対して、post_contentでファイルを送信出来ないという問題があるとおもわれます。

@nahi
Owner

なるほど、そういう問題だったのですね。ありがとうございます。確認します。 #181もこれかな。。。

@ramsydx
@nahi nahi added a commit that closed this issue Oct 19, 2014
@nahi Add :force_basic_auth config
Generally HTTP client must send Authorization header after it gets 401
error from server from security reason. But in some situation (e.g.
API client) you might want to send Authorization from the beginning.

You can turn on/off force_basic_auth flag for sending Authorization
header from the beginning. (Of cource, if a request URI matches with
the URI you set in set_auth method)

Syntax:
  HTTPClient.new(:force_basic_auth => true)
or
  c = HTTPClient.new
  c.force_basic_auth = true

Closes #166, #179, #181.
5be11cb
@nahi nahi closed this in 5be11cb Oct 19, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment