2010-04-13 49 views
1

我得到了迴應「不允許的密鑰字符」。在我的CodeIgniter應用程序中,當我有一個http_cookie通過GET從SSL中繼站點(支付網關)發送到我的應用程序。我的問題是,是否有任何方法可以通過導致此Disallowed消息並退出的「_clean_input_keys」(在system/libraries/Input.php中定義)方法獲取此http_cookie?

該參數包含一個getenv(「HTTP_COOKIE」)設置爲一個隱藏輸入,需要用於保持會話保持活動狀態,即使它將被髮送到中繼站點並返回。

的HTTP_COOKIE字符串看起來像:&HTTP_COOKIE=PHPSESSID=775572c8c3b161bc957281aa901eb09c;%20ci_session=a%3A4%3A{s%3A10%3A%22session_id%22%3Bs%3A32%3A%229666689e0c8e4f26fb38889351765304%22%3Bs%3A10%3A%22ip_address%22%3Bs%3A14%3A%2127.0.0.1%22%3Bs%3A10%3A%22user_agent%22%3Bs%3A50%3A%22Mozilla%2F5.0+%28Macintosh%3B+U%3B+Intel+Mac+OS+X+10.6%3B+da%22%3Bs%3A13%3A%22last_activity%22%3Bs%3A10%3A%221271145332%22%3B}d9b9df5d8a0b51f303cbe6bb4bbe497e

+0

也許試着讓'='符號逃脫? – Amber 2010-04-13 08:12:49

+0

剛剛嘗試時沒有修復它。你會用什麼函數來轉義這個字符串? – rkj 2010-04-13 08:18:48

+0

如果您使用奇怪的字符,如問號'?',這也可能發生在HTML表單中。在'name'屬性的值中。 – 2011-12-09 20:52:06

回答