2011-08-03 115 views
1

我有一個非常快速的問題,答案可以是個案基礎,但總體而言,您認爲更有效的方式將值從前端傳遞到後端。從客戶端到php。將它通過表單或通過URL傳遞會更好嗎?我知道安全對於表單的價值來說是一個很大的優勢,但它更有效率嗎?哪個更快?我希望這個問題是有道理的。多謝你們。通過表單或Url傳遞值

回答

1
  • 兩個POST(在這種情況下,從形式)和GET請求是通過頭和/或URL完全可見的,即,同樣惡劣的安全

  • 可以聲稱GET請求是(通過瀏覽器和服務器)和「非限制」()(GET,依賴於瀏覽器和服務器)有很大的尺寸限制差異(對於初學者用戶),在服務器上配置)

  • POST當請求非冪等應被使用,即當它引起服務器狀態時,它被執行(more)每個時間的變化。推論,GET請求應該不會造成副作用(idempotent甚至無效)。

  • A GET請求包含所有數據的URL,因此它可以加書籤。

的更多信息,可URIs, Addressability, and the use of HTTP GET and POST由W3C


1)這往往是事故的原因「瀏覽器會詢問補辦我的數據」類型的問題。

+0

不錯的答案,它給出了GET和POST的核心含義 – dpp

1

我認爲它具有相同的安全級別。 即使您使用post方法通過表單發送它,但如果您檢查http標頭,仍然可以看到它。

我認爲通過GET(url)傳遞的數據量有限制,並且小於POST的限制(您稱之爲表單)。 如果你通過使用GET(url),它會更加SEO友好,它可以給用戶一個書籤或返回到特定狀態或頁面的方式。

你應該看看when-do-you-use-post-and-when-do-you-use-get

0

。注意到請求被用於請求數據和POST請求用於更改服務器的數據/狀態GET。輸入URL也是一個GET請求,所以它真的取決於客戶端在做什麼,他是在請求數據嗎?或者他想更改數據?現在,如果使用GET,參數(?name = value & name2 = value)將從用戶收集?如果是,則使用表單,如果不是,則使用超鏈接。

哪個更快?如果使用form(GET方法),瀏覽器將不得不處理用戶輸入來構建URL。如果用戶只是在地址欄中輸入網址,或者他跟隨了一個鏈接,那麼速度會更快,瀏覽器會嘗試訪問該網址。