Cookies and SessionIds

Hier könnt ihr alle Fragen zu SpiderBasic austauschen.
Benutzeravatar
dige
Beiträge: 1182
Registriert: 08.09.2004 08:53

Cookies and SessionIds

Beitrag von dige »

Hallo in die Runde,

ich möchte SpiderBasic nutzen um mich bei einem Server anzumelden und dann Infos abzugfragen und anzuzeigen.
Die zwei notwendigen http Requests habe ich schon durch manuelle Aufrufe im Browser durchprobiert.
Mit SB klappt auch schon die Anmeldung über einen POST Request.

Jetzt kommt das Problem. Der zweite Request wird vom Server mit "not authorized" abgelehnt.

Beim Login POST sehe ich im Antwort Header des Servers, dass ein Cookie mit einer PHPSESSID mitgeliefert wird.

Wie kann ich SB dazu bewegen, diese ID beim zweiten Request wieder mitzusenden?

Wisst ihr was ich meine?
"Papa, mein Wecker funktioniert nicht! Der weckert immer zu früh."
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8675
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 32 GB DDR4-3200
Ubuntu 22.04.3 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken
Kontaktdaten:

Re: Cookies and SessionIds

Beitrag von NicTheQuick »

Normalerweise machen das Browser ja selbstständig. Wenn im Response-Header vom Server nach einem Login ein "Set-Cookie" zurückkommt, merkt der Browser sich das und sendet das Cookie automatisch bei jedem nachfolgenden Request wieder zum Server, solange das Cookie noch gültig ist und zur entsprechenden Domain-Port-Kombination passt.

Kocht da Spiderbasic vielleicht sein eigenes Süppchen und umgeht den Browser-eigene Cookie-Mechanismus? Das wäre eventuell fatal, vor allem was Cross-Origin-Requests angeht.

Sorry, dass ich zu SpiderBasic selbst nichts sagen kann, weil ich es nicht nutze.
Bild
Benutzeravatar
dige
Beiträge: 1182
Registriert: 08.09.2004 08:53

Re: Cookies and SessionIds

Beitrag von dige »

Stimmt, im Response Header steht:

Code: Alles auswählen

Set-Cookie	
PHPSESSID=e613aa6e7742f3148d43c4fd6eff64ba; expires=Fri, 03-Nov-2017 12:20:52 GMT; path=/
und der Browser sendet beim nächsten Request dann im Header

Code: Alles auswählen

Cookie	
PHPSESSID=e613aa6e7742f3148d43c4fd6eff64ba
SpiderBasic bekommt beim Login ebenfalls das Set-Cookie mitgeteilt, sendet es aber beim nächsten Request nicht mit..
"Papa, mein Wecker funktioniert nicht! Der weckert immer zu früh."
Benutzeravatar
TroaX
Beiträge: 659
Registriert: 08.03.2013 14:27
Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Pop_OS! | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Pop_OS!
Wohnort: NRW
Kontaktdaten:

Re: Cookies and SessionIds

Beitrag von TroaX »

Liegt dein Spiderbasic-Programm auch auf dem gleichen Server wie das PHP-Backend bzw. laufen diese über die gleiche Domain?
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Pop_OS!
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box :lol:
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Benutzeravatar
dige
Beiträge: 1182
Registriert: 08.09.2004 08:53

Re: Cookies and SessionIds

Beitrag von dige »

Nein, Crossdomain.
"Papa, mein Wecker funktioniert nicht! Der weckert immer zu früh."
Benutzeravatar
TroaX
Beiträge: 659
Registriert: 08.03.2013 14:27
Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Pop_OS! | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Pop_OS!
Wohnort: NRW
Kontaktdaten:

Re: Cookies and SessionIds

Beitrag von TroaX »

Kannst du mal bitte einen kompletten Response-Header vom Login posten? Crossdomain sollte funktionieren, so lange du immer die gleiche Domain ansprichst, da die Cookies immer an die entsprechen Domain mitgeliefert werden. Wenn der Cookie von Domain example.tld kommt, dann leitet er den auch an alle Server, die über diese Domain angesprochen wird, weiter.
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Pop_OS!
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box :lol:
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Benutzeravatar
dige
Beiträge: 1182
Registriert: 08.09.2004 08:53

Re: Cookies and SessionIds

Beitrag von dige »

Code: Alles auswählen

Access-Control-Allow-Cred...	true
Access-Control-Allow-Orig...	null
Cache-Control	                no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Content-Encoding 	        gzip
Content-Type	                application/json; charset=utf-8
Date	                                Wed, 01 Nov 2017 08:09:16 GMT
Expires	                        Thu, 19 Nov 1981 08:52:00 GMT
P3p	                                CP="IDC DSP COR CURa ADMa OUR IND PHY ONL COM STA"
Pragma	                        no-cache
Server	                        wildix-http-server
Set-Cookie	                        PHPSESSID=03071717e207f17da9bc1f670a07481e; expires=Wed, 08-Nov-2017 08:09:16 GMT; path=/                               
Transfer-Encodin                 chunked                             
Vary	                                Accept-Encoding 
X-Powered-By	                PHP/5.3.6-6~dotdeb.0
"Papa, mein Wecker funktioniert nicht! Der weckert immer zu früh."
Antworten