稍微偏離主題 - 但是在發送郵件假人可以是「危險的」。
如果嘗試發送到不存在的本地地址,許多服務器都會「記錄」。例如 - 如果服務器的域名是「whatever.com」,並且您發送到隨機地址,如[email protected],並且「aaa」不是有效的用戶,則服務器會注意到這一點。
服務器可能會然後執行一個操作,如阻止您作爲發件人一段時間。 (這有助於減少字典式攻擊的垃圾郵件。)因此,您的「測試」最終會有效阻止真正的郵件傳遞。
反過來也是如此。假設你嘗試發送一個你知道有效的外部地址(例如你自己的電子郵件地址)作爲測試。在這種情況下,從地址必須是有效的內部地址。如果你使用的是無效的內部地址,或者更糟糕的地址不是內部的,那麼服務器可能會拒絕發送郵件(最好),最壞的情況是再建立一個臨時塊。
這兩種情況下的關鍵因素是,雖然SMTP協議非常「鬆散」,但SMTP服務器非常關注「不良行爲」,因爲這是區分垃圾郵件程序的一種方式。所以任何隱藏「不正確」的行爲可能會導致它任意拒絕接受你的郵件(通常在一段有限的時間內。)
順便提一句,回到你原來的問題。 你的兩個測試都非常瞬時。即使電子郵件服務器位於世界的另一邊,您可以在幾秒鐘內完成兩項檢查。所以即使你發回2個數據包給用戶,他們會看起來像「到達」一樣。並且由於來自瀏覽器的1個請求只能處理來自服務器的1個響應,您需要以2個數據包發送響應。
即做第一次測試 - 發送第一部分響應 - 做第二次測試 - 發送第二部分響應。
對於普通的HTTP數據包來說,這沒什麼大不了的。第一個響應準備就緒後進行某種清空/發送,然後在第二個響應後再次發送。瀏覽器用於在部分頁面到達時顯示。
但是,對於AJAX請求,您需要在相當低的級別進入您的框架。我知道大多數框架都要求傳入的異步數據包在「解析」之前「完整」。如果數據包被格式化爲xml格式,那麼尤其如此,其中部分解析在幾乎所有情況下都是無用的。
有人可以格式化問題... – RageZ 2009-11-06 05:59:54
也「frenz」是不是真的好看 – RageZ 2009-11-06 06:00:29
與questionmarks – Omnipresent 2009-11-06 06:04:25