Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kako da dodam novo polje u HttpHeader?

[es] :: .NET :: Kako da dodam novo polje u HttpHeader?

[ Pregleda: 2273 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

gorann
Goran nastic
Beograd

Član broj: 15241
Poruke: 88
195.178.35.*



Profil

icon Kako da dodam novo polje u HttpHeader?10.04.2005. u 00:20 - pre 231 meseci
Zelim da dodam novo polje u header i to uradim ovako: this.Response.AddHeader("fieldname", "value"); kada posle ove komande uradim redirekciju na novu stranu i probam da procitam parametar koji sam ubacio u header ne dobijem nista: this.Request.Headers.Get("fieldname") ne daje nista. Moze li mi iko pomoci da resim ovaj problem.

hvala gorann

gnastic
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Kako da dodam novo polje u HttpHeader?11.04.2005. u 14:35 - pre 231 meseci
Imaš lošu predstavu o tome šta je HTTP header To nisu podaci koje možeš da šetaš tamo-vamo, to su instrukcije usputnim proxy serverima i krajnjem klijentu (browseru).

Ako hoćeš da ti se nešto vrati nazad, ili ga stavi u hidden input polje, ili koristi cookie.
Napomena, redirekcija ti nece vratiti sadržaj hidden polja, morao bi da uradiš submit sa klijent strane.



Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

gorann
Goran nastic
Beograd

Član broj: 15241
Poruke: 88
195.178.35.*



Profil

icon Re: Kako da dodam novo polje u HttpHeader?12.04.2005. u 08:06 - pre 231 meseci
E pa za pocetak da razjasnim sta ja hocu? Dakle, funkcija this.Request.UserAgent() vraca tip browsera koji koristi klijent, zar time ne uzimam vrednost parametra User-Agent iz Http header-a? Ili this.Request.Headers.Get("User-Agent") sto daje isti rezultat. Ako isprintas header na stranici u browser-u videces da je "User-Agent" jedan od parametara http-headera. Ako hocu npr. ime hosta sa koga dolazi zahtev web serveru lepo uradim this.Request.UserHostName() ili this.Request.Headers.Get("Host");. Sve ovo govori da header nije obicna gomila teksta. Ja hocu da u header ubacim field koji ce se zvati npr. pera i imati vrednost 50 i da to prosledim gateway-u ili proxiy-u koji ce na osnovu toga preduzimati odgovarajuce akcije. Za to se, kako mi se cini, koristi objekat Response.

Prema tome, ja bas hocu da se server obraca proxiy-u to je moj cilj a ne da pomocu hiden polja hvatam sta je klijent browser-a poslao serveru. Klijent nije u ovoj prici ( ne klasican klijent ) vec proxy server koga u neku ruku mozemo smatrati klijentom.
MOJA IDEJA JE DA U HEADER-U SA SERVERA PROSLEDIM PARAMETAR ILI POLJE PROXIY-u.


gnastic
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Kako da dodam novo polje u HttpHeader?12.04.2005. u 12:59 - pre 231 meseci
Iskreno, uneo si više zabune nego razjašnjenja. Ajd da probam da raščlanim ovo:

1. Hoćeš da proslediš komandu proxy-u. Http header jeste pravo mesto za to.
2. Uradiš Response.Redirect na Form2.aspx (na primer)
3. Očekuješ da u WebForm2.aspx codebihend možeš da očitaš vrednost koju si ubacio u Response.Headers?

Evo zašto ovo ne radi:
1. Nalaziš se na webform1
2. Dodao si "pera" u Response.Header
3. Uradio si Response.Redirect
4. U tom trenutku, renderovanje stranice se blokira, asp.net ubacuje status 302 Redirect u header i taj response, uključujući i pera i redirect ide nazad u proxy, i nazad na klijenta. Ako "pera" nešto znači proxy-u, proxy će to videti.
5. Kao odgovor na status 302, klijent izdaje novi request za webform2 i šalje NOVI set hedera proxy-u, koji doda svoje informacije (obično VIA heder) i pošalje serveru
6. codebehind webform2-a ne vidi "pera" zato što ga ni klijent ni proxy nisu ubacili.

Pretpostavljam da te zbunjuje to što i u request i u response postoje hederi. ali u requestu su hederi koje je kreirao klijent (i proxy) kao instrukcije serveru, tj. objašenjenje serveru sa kim ima posla, koji browser, koji je encoding request-a, koji tipovi odgovora su prihvatljivi, itd. Response hederi su instrukcije klijentu (i usputnom proxy-u) od strane servera i server ih kreira, tu su expiration sadržaja, zahtev za authentikacijom, itd. Format im je isti, ali im je funkcija drugačija.

U krajnjoj liniji, laički rečeno, http hederi putuju samo u JEDNOM pravcu. Tehnički, po standardu, oni su takođe immutable, tj. usputni proxy i gateway serveri ne bi smeli da ih menjaju, mogu samo da dodaju extra informacije. Ti možeš na serveru da očitaš sve request hedere i da ih repliciraš u response (mada ne vidim neke koristi), ali browser to sigurno neće uraditi u drugom smeru.
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

[es] :: .NET :: Kako da dodam novo polje u HttpHeader?

[ Pregleda: 2273 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.