Munka a cookie twebbrowser alkatrész (olvasás, uchtanovka)

Munka a cookie TWebBrowser alkatrész (olvasás, uchtanovka)

Itt volt egy kérdés a cookie TWebBrowser komponens.
A kérdésem két részből

1) Az első rész készítésére vonatkozik, cookie-k
2) A második rész - az átadási / sütik telepítését megelőzően a nyitólapra

Az első rész a kérdés úgy döntött az internet volt elegendő dokumentációt a cookie lehet tekinteni a OLE felületen, nevezetesen

myCookie: = (WebBrowser1.Document mint IhtmlDocument2) .cookie;

De a második rész sokkal nehezebb. Keresés itt sokáig jutott erre a következtetésre, ha a cookie viszi át a fejlécet, hogy szükséges hozzá a lekérdezés kéznél, nevezetesen:

Fejlécek: = StringToVarArray ( "cookie: test_cookie = 123456789" # 13, # 10);

StringToVarArray funkció szükséges átalakítani egy String, a Variant típusú. Funkció kód nagyon egyszerű:

funkció StringToVarArray (const S: string): Variant;
# XA0; var
# XA0; # XA0; i: integer;
kezdődik
# XA0; Eredmény: = VarArrayCreate ([0, hossza (S) - 1], varByte);
# XA0; i: = 1 hossza (S) do
# XA0; # XA0; Eredmény [i-1]: = ORD (S [i]);
végén;

A végén mindent meg kell, mint a csokoládé, de nifiga nem működik :-), vagy csak a cookie-kat, hanem POSTDATA.

Azt hiszem, ez a kis cikk lesz az érdeke, akkor előfordulhat, hogy csinálok rosszul?

ps Tesztelés költ a helyi számítógépen telepített Apache. readcockie.php script tartalmát jeleníti meg a POST és a cookie-tömb.

pps A sütik telepítését keresztül IdHTTP komponens lehet banális keresztül fejléc és azt hiszem, hogy működni fog, amíg igazán nem személyesen teszt, de vannak olyan pozíciók az interneten, hogy a tervezési munkák én is kívánatos megoldás TWebBrowser

Itt a probléma már általánosan ismert, mint például a már akkor lokalizált hiba Cookie más tulajdonságokat megváltoztatjuk gond nélkül. Mint például a User-Agent és Referer tesztelték személyesen.
Vopross hogyan kell változtatni a cookie?

IMHO: Ha jól értem azt TWebBrowser-alkatrész, mint egy rakás Delphi hibák! Fenébe, hogy hogyan lehet, hogy egy alkatrész anélkül, hogy a felhasználó képes továbbítani a cookie-kat? Az egyetlen magyarázat az, hogy a Borland, mint Bill általában szemtelen!

Most, sőt, éppen TWebBrowser-, és nincs módja annak, hogy módosítsa a cookie kulcsszó, amely bekapcsolja csúszda használata harmadik féltől származó összetevők, mint például a IdHTTP amely megbirkózik vele is. Az eredmény egy teher a TWebBroser. Most az a kérdés, hogyan tudok a tartalmát a GET, POST, Fejes kérelmet. Mindent meg kell feldolgozni BeforeNavigate, de hogyan kell olvasni?

Köszi előre is minden tanácsot

Srácok sokat segít az utolsó része a problémának. Hosszas szenvedés és az MSDN olvasni következtetésre jutott, hogy mindegy is szabályozható a:

(WebBrowser1.Document mint IhtmlDocument2) .cookie

Egy feltétellel, a cookie továbbítani kell, mielőtt a kezdési szerkesztést. Nevezetesen, ha letép egy URL, amely meghatározza a cookie akkor, és csak akkor lehet szerkeszteni (vagy helyettesíti a változás).

De ha a cookie szerkesztett és tárolt nekem kérni, hogy problémák merülnek fel. Kísérlet arra, hogy módosítsa az esemény Beforenavigate kudarcba fulladt, mert ebben a szakaszban nem létezik WebBrowser1.Document

Mi lenne WebBrowser1.Document ott először megpróbált megnyitni egy dokumentumot about: blank, és csak ezután módosítsa a cookie de nem működik :-(

Tud valaki tanácsot, hogy

Memória: 0,74 MB
Idő: 0.043 c

Kapcsolódó cikkek