所以我最近得到了一個節點MCU Lua V1,我開始連接到我的WiFi,並從https://en.wikipedia.org/wiki/NodeMCU#HTTP_server加載默認的HTTP服務器。興奮地我在我的ADSL路由器上做了一個端口轉發,並要求朋友連接以查看我的Hello World響應。我的朋友有蘋果設備(iPhone/iPad)無法加載網站。與Android設備或電腦的朋友在瀏覽網站時沒有任何問題。我試着用我的iPad在同一個WiFi網絡上。它也有這種行爲。爲了弄清楚發生了什麼,我在iPad上嘗試了不同的瀏覽器。我做了一個Wireshark跟蹤,看到NodeMCU向iPad發送響應。但iPad一直顯示連接錯誤,或者你是離線消息。認爲它可能是缺少的html頭我改變了響應節點MCUU發送到:iOS忽略NodeMCU http服務器響應和瀏覽器顯示無連接
<!DOCTYPE html><html><body><h1>My First Heading</h1><p>My first paragraph.</p></body></html>
仍然iPad顯示相同的消息。
所以我的問題是爲什麼iOS的行爲是這樣的,什麼阻止它,使瀏覽器認爲它沒有互聯網連接? iOS上的瀏覽器是以這種方式行事,還是操作系統在做一些奇怪的事情。爲了讓iOS設備看到網頁,我需要做些什麼?
謝謝你解決這個問題,它現在可以工作,爲什麼只有iOS設備拒絕這個作爲一個有效的響應?看起來,iOS網絡堆棧拒絕該消息,並嘗試再次獲取TCP數據包2次。爲什麼添加HTTP/1.0 ...解決了似乎只發生在iOS設備上的問題。 –
你不得不問蘋果......我只能猜測其他瀏覽器在處理響應時有點「寬大」和寬容。海事組織這實際上是不好的行爲,因爲它掩蓋了根本的錯誤 –