Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- eBay-es kütyük kis pénzért
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- sziku69: Szólánc.
- Brogyi: CTEK akkumulátor töltő és másolatai
- droidic: Windows 11 önállóság nélküli világ: a kontroll új korszaka
- laskr99: DFI és DFI Lanparty gyűjteményem
- Magga: PLEX: multimédia az egész lakásban
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
Új hozzászólás Aktív témák
-
coco2
őstag
Azért nem részletezek ki mindent, mert megpróbálok nem túl o/t lenni, noha sejtem, hogy akadnak itt koponyák, akik kicsit többet is látnak annál, hogy php scriptelni. De hát legyen. Ha bárkit zavar, majd rám szól, és akkor befejeztem.
Szóval van egy sdk itt:[link]
Ebben írtam egy klienst, amivel http requesteket küldök a webszerver felé, ami már a szokásos php környezet. A kliens kommunikációs eszköze alapvetően ez: [link]
Mostanra találtam packet debuggert windows loopback sockethoz is itt:[link], így már ki tudom figyelni, igazából mi zajlik az alapokban.
Amikor böngészővel ráküldök 127.0.0.1/index.php-ra (index.php tartalma:
<?php
session_start();
if (!isset($_SESSION["counter"])) $_SESSION["counter"]= 0;
$_SESSION["counter"]++;
echo "*".$_SESSION["counter"]."*".session_id()."*";
?>)egy kérést, akkor ez megy ki első alkalommal (a raw log-ok Fiddler 2-vel készültek):
GET http://127.0.0.1/index.php HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:16.0) Gecko/20100101 Firefox/16.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: hu-hu,hu;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Connection: keep-aliveamire a válaszban ott egy session id:
HTTP/1.1 200 OK
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Type: text/html
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Server: Microsoft-IIS/7.5
X-Powered-By: PHP/5.4.8
Set-Cookie: PHPSESSID=nnfe854il49q0np33dikao4nt6; path=/
Date: Sun, 18 Nov 2012 17:35:05 GMT
Content-Length: 30
*1*nnfe854il49q0np33dikao4nt6*Második alkalommal a böngésző már tudja a session id-t, és berakja a kimenő kérésbe is:
GET http://127.0.0.1/index.php HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:16.0) Gecko/20100101 Firefox/16.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: hu-hu,hu;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Connection: keep-alive
Cookie: PHPSESSID=nnfe854il49q0np33dikao4nt6
Cache-Control: max-age=0visszaérkező válasza pedig:
HTTP/1.1 200 OK
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Type: text/html
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Server: Microsoft-IIS/7.5
X-Powered-By: PHP/5.4.8
Date: Sun, 18 Nov 2012 17:37:26 GMT
Content-Length: 30
*2*nnfe854il49q0np33dikao4nt6*amiben már azért nincs session id, mert az csak kapcsolat építéskor jön meg egyszer, és amikor a kliens már eleve elküldi, akkor a szervertől már nem jön semmi.
Megnéztem bináris felületen is a kicsi kliensecském kommunikációját a webszerver felé, a raw log a SocketSniff-el készült (linkje fentebb). Már első alkalommal ez ment ki:
Send: Return Code: 0x00000000
GET /index.php HTTP/1.1
Cookie: PHPSESSID=grnor9798ub5c9p29nfkll3jn4
Host: 127.0.0.1
Content-Length: 0és ez jött vissza:
Receive: Return Code: 0x00000000
HTTP/1.1 200 OK
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Type: text/html
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Server: Microsoft-IIS/7.5
X-Powered-By: PHP/5.4.8
Date: Sun, 18 Nov 2012 17:45:07 GMT
Content-Length: 30
*6*grnor9798ub5c9p29nfkll3jn4*A jelek szerint az NSURLConnection olyan szinten "okos", hogy teljesen elrejti előlem a beérkező cookie-kat, lerakja valahova file-ba, és a teljes kommunikációnak azt a részét elrejti előlem, ami natív libek esetében kicsit szokatlan számomra. Amikor kommunikációt indítok kifelé, akkor pedig minden külön kérés nélkül belekotor a cookie mappákban, elővakar valahonnét valamit, és automatán elküldi. Mindezt eddig nem tudtam, és törtem a fejem rajta, miért nem jön vissza a session id. Nem tudtam róla, hogy ha nem külön utasítom a libet, hogy küldjön cookie-t, az akkor is küld. Most, minthogy a misztériumot sikerült a segítségetekkel felderítenem, már tudom, merre induljak tovább. (Felkutatom a tárolt cookie-kat, és jól kitörlöm mindet, hogy felhasználó váltásoknál ne csessze szét nekem a session kezelést mindenestül.)
Miközben a saját pecsenyémet sütögettem, megpróbáltam lehetőleg kíméletesen telefirkálni a prohardvert. Persze ami kérdésetek van, szívesen válaszolok rájuk.
Új hozzászólás Aktív témák
- Vadonatúj, bontatlan iPhone 17 256GB kék KÁRTYAFÜGGETLEN! 1 év Apple garancia!
- (Használt/Used) Huawei Mate 20 Pro - 128 GB - Midnight Blue (Unlocked/Kártyafüggetlen)
- Gigabyte B450M S2H + Ryzen 5 1400 + MSI GTX 1650 Super 4GB
- "Szinte Új" iPad Pro 12.9 (3. gen) + Apple Pencil 2 + Smart Folio tok
- ASUS TUF Gaming VG34VQL3A 34" Ívelt Gamer Monitor
- Surface Laptop 5 Touch 13.5 Retina i7-1265U 10mag 4.8Ghz 16GB 512GB Intel Iris XE Win11 Pro Garancia
- HP ProBook 440 G5 i3-7100 laptop
- Lenovo ThinkPad P14s Gen 1 i7-10510U 32GB 512GB Nvidia Quadro P520 14" FHD Gar.: 1 év
- Telefon felvásárlás!! Xiaomi Redmi Note 10, Xiaomi Redmi Note 10s, Xiaomi Redmi Note 10 Pro
- HP 150W töltők (19.5V 7.7A) kis kék, kerek, 4.5x3.0mm
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

