Sida 1 av 1

TCP/HTTP-protokoll, Arduino och Python urllib2

Postat: 20 maj 2015, 19:39:00
av JanErik
Har satt igång webserver på Arduino enligt http://www.arduino.cc/en/Tutorial/WebServer fast med uip_ethernet-biblioteket (ENC28J60). Har dock tagit bort Refresh-raden ur headern.

Funkar som den ska i browsern men när jag försöker ladda samma med Python och urllib2 enligt första enkla exemplet på https://docs.python.org/2/howto/urllib2.html är ganska slumpmässigt om det funkar eller lämnar att vänta.

Satte timeout (1s) på urlopen och en while-loop med try-except som försöker tills response är olika None och då kommer det oftast direkt på andra försöket.
Är det nåt enligt HTTP- eller TCP-protokollet som saknas nu som gör att anslutningen inte stängs korrekt?

Re: TCP/HTTP-protokoll, Arduino och Python urllib2

Postat: 20 maj 2015, 20:05:01
av Micke_s
http 1.1 stänger inte anslutningen vanligvis.
Du måste ange "connection:close" bland headers...

Edit: ren gissning på vad som är problemet.

Re: TCP/HTTP-protokoll, Arduino och Python urllib2

Postat: 21 maj 2015, 11:20:50
av JanErik
Det finns ju nog där. Kanske borde öka delayen före man stänger TCP-anslutningen?