ダイジェストHTTP認証を使用するWebサービス(使用する必要がある)とWebサーバーがあります。私はHttpWebRequestを使用してサーバーと通信します(GETメソッドを使用)。認証に必要なNetworkCredentialsが提供されます。しかし、GetResponse()を呼び出すと、エラー400(Bad request)が発生します。クエリーでダイジェストし、httpダイジェストをダイジェストする
住所:http://info.server.com/someFolder/servlet.do?cmd=get_info¶m=value
要求例(完全ではない、唯一の関連のもの):
GET /someFolder/servlet.do?cmd=get_info &のparam =値HTTP/1.1
ホスト: info.server.com
応答:401認証が必要です
2番目のリクエスト:
GET /someFolder/servlet.do?cmd=get_info &のparam =値HTTP/1.1
ホスト:info.server.com
認証:ダイジェスト... URI = "/ someFolder /サーブレット.doという」...(明らかではない完全なヘッダ)
秒の応答:400不正な要求
私は、Webブラウザ(IE、Firefoxの)でこの要求を試みたし、それが動作しますが、そのブラウザを置くようです認可hのuri parthの全体要求uri eader、HttpWebRequestは上記のようにヘッダーをフォーマットします。 HttpWebRequestにAuthorizationヘッダーにURI全体を入れるように強制する方法を知っている人はいますか? また、この問題の別の解決方法がありますか?
ありがとうございました!