2012-01-30 39 views
6

在一些項目中,我見過這些行:文件名末尾的問號是什麼意思?

$.get("defaults/data.json?", ...); 
$.get("defaults/structure.html?", ...); 
$.get("defaults/style.css?", ...); 

在服務器端的這些文件,沒有任何多餘的符號,所以 我不知道是什麼在文件末尾的問號是什麼意思?

回答

5

URL中的?表示查詢字符串的開頭。 A ?最後沒有變量後面通常是不必要的說法,「這絕對沒有查詢字符串」。

這將有可能例如URL重寫引擎,以檢查傳入REQUEST_URI,看它是否與?結束,並採取比?沒有結束請求一個不同的動作,但是這將是一個不尋常的用法。在查詢字符串中指定一些值會更常見。

+0

在這種情況下,查詢字符串可以從get()函數的第二個參數中給出的參數構造(參見[documentation](http://api.jquery.com/jQuery.get/))。 – Tadeck 2012-01-30 14:24:28

5

「?」是通過GET請求提供參數的分隔符。

+0

不一定 - 您也可以在POST(或任何其他)請求中發送查詢字符串。請參閱RFC2616:http://www.w3.org/Protocols/rfc2616/rfc2616-sec5.html#sec5.1 – Piskvor 2012-01-30 14:11:04

+0

@Piskvor好的,謝謝。我只是沒有考慮到這種可能性... – Abrixas2 2012-01-30 14:23:51

+0

它更多的是意想不到的副作用恕我直言;但它適用於迄今爲止所見過的瀏覽器和服務器。 – Piskvor 2012-01-30 14:59:33

相關問題