2011-04-26 20 views
2

在我們的代碼中,我們有查詢字符串變量,名稱很短,如cId,iId,isA和u。很難說出這些變量來自他們的名字。我想要使​​用更多的描述性名稱,例如customerId,itemId,isAnonymous和user。你如何命名你的查詢字符串變量?是短還是長?爲什麼?

我想知道在查詢字符串中使用長名稱的缺點(如果有的話)。

感謝

+4

與變量名稱長度無關,但如果用戶將變量值更改爲其他客戶或項目的變量值,會發生什麼情況?他們能看到其他客戶的數據嗎?這是您應該解決的嚴重安全漏洞。 – 2011-04-26 22:16:49

回答

2

我會保留變量名稱短,因爲限制通常約爲2,047個字符,但其他瀏覽器可以處理更多。這裏有一個很好的解釋:http://www.asp101.com/tips/index.asp?id=102

只因爲尼佳看到他的一個4000,絕對不是一個好主意,假設這對你有用。

0

你有255個字符的GET操作的極限,所以你真的需要你們的名字將不遺餘力那裏。對於POST操作,不需要擔心冗長。

+4

也許有點超過255. http://support.microsoft.com/kb/208427 – 2011-04-26 20:03:39

+0

我有近4000個字符(編碼)的分析數據。這是一個錯誤(在我的數據發送中),但在GET請求中它仍然是4K。 – Nija 2011-04-26 21:18:22

3

對於查詢字符串中的簡短變量名稱,我聽到的另一個參數是對變量進行一些混淆處理,以防止用戶「變得富有創造性」,並嘗試通過編輯URL訪問他們不應該訪問的內容。我不確定我是否同意這一點,除非你在做一些瘋狂的事情,比如在網址的某個地方設置IsAdminUser = false - 但是如果你這樣做,你的代碼可能會有更深的問題。 ;)

+2

默默無聞的安全從來就不是好事。我想我們都會同意查詢字符串感覺很髒。 :) – 2011-04-26 22:18:55

+0

絕對。我確實說過我並不相信這個論點,但是我正在把它放在那裏,讓OP讓他自己去思考。 :) – ZombieSheep 2011-04-26 22:22:53

相關問題