konto usunięte

Temat: HttpWebRequest + Digest HTTP Authorization + GET

Zagadka:

Pomijam to, co zwykle powinno sie znajdowac w naglowkach HTTP, pisze tylko to, co niezbedne.

Klient:
GET /domain/someservice.do?command=get_info¶m=value

Serwer: 401 Unauthorized.

Odpowiedz klienta (generowana automatycznie przez HttpWebRequest po podaniu NetworkCredentials):
GET /domain/someservice.do?command=get_info¶m=value
Authorization: ... uri="/domain/someservice.do" ...

Serwer: 400 Bad request.

Czy ktos zna jakis magiczny sposob, zeby (uzywajac HttpWebRequest, WebClient badz czegokolwiek innego dostepnego z poziomu .netu) wepchnac do request-uri pelny adres, a nie tylko taki obeciety?

Bylbym NAPRAWDE wdzieczny za pomoc:) Jestem o krok od wlasnorecznego zaimplementowania HTTP i uzywania Socketow...

Wszystko inne jest prawidlowo zrobione. Wszystkie dane do autoryzacji, adresy, itd. Jedyny problem to ten adres w naglowku Authorization.

Z gory dzieki:)

Pozdr

konto usunięte

Temat: HttpWebRequest + Digest HTTP Authorization + GET

Strzelam troche w ciemno, a czy nie mozesz po prostu ustawic odpowiedniego naglowka przy pomocy wlasciwosci HttpWebRequest.Headers na adres taki jaki Ci sie podoba?

A tak przy okazji, to czy uzywasz NetworkCredentials do autoryzacji requestu?

konto usunięte

Temat: HttpWebRequest + Digest HTTP Authorization + GET

Tak, uzywam NetwokCredentials.

Spreparowanie naglowka jak dotad dalo efekt w postaci wyjatku ProtocolViolationException z metody HttpWebRequest.CheckProtocol.
Ale to bylo takie pierwsze podejscie - prawdopodobnie cos gdzies zle zakodowalem.

Mimo wszystko wydaje sie dziwne, ze jesli uzywasz GET z parametrami i digest authentication, .NET kleka...

konto usunięte

Temat: HttpWebRequest + Digest HTTP Authorization + GET

A co podajesz jako URI kiedy tworzysz request? Jak tworzysz request? A sprawdzales jak to dzial przy POST?

konto usunięte

Temat: HttpWebRequest + Digest HTTP Authorization + GET

Przede wszystkim, dziekuje za pomoc:)

Wszystko, co jest potrzebne do rozwiazania problemu napisalem w pierwszym poscie.
Zgodnie z przypuszczeniem, okazalo sie, ze problem lezy w obcietym uri w naglowku Authorization.
POST dziala poprawnie, bo w tym przypadku adres requestu i adres w naglowku Authorization sa takie same (parametry ida jako zawartosc).

Pomogla dopiero wlasnoreczna implementacja tworzenia tego naglowka:/

Problem udalo sie rozwiazac, ale niesmak pozostaje... Dlaczego .NET nie potrafi samodzielnie obsluzyc tego przypadku?



Wyślij zaproszenie do