disallowed key characters.咋回事?这篇文章告诉你答案!

吉云

今天真是折腾死我!你们有没有遇到过这种情况,就是网页上突然蹦出个 "Disallowed Key Characters." 的错误提示?我今天算是彻底栽在这上面,不过好歹是给弄明白,赶紧来跟你们分享一下,省得你们也跟我一样走弯路。

两眼一抹黑

一开始我遇到这个问题的时候,整个人都是懵的。我就是像往常一样提交个表单,结果就给我报这个错。我当时心想,这是啥玩意儿?我这表单也没啥特别的,怎么就 "Disallowed Key Characters" ?

disallowed key characters.咋回事?这篇文章告诉你答案!

然后:到处找原因

没办法,遇到问题总得解决。我就开始在网上到处搜,看有没有遇到同样问题的朋友。你还别说,真有不少人跟我一样倒霉。有人说是 URL 里有非法字符,还有人说是 Cookie 的问题。我按照他们说的试半天,结果还是不行,差点没把我给急死。

过程:抽丝剥茧

后来我静下心来想想,这问题肯定是出在提交的数据上。我就开始一点一点地检查我的表单,看看是不是哪个字段的 name 属性或者提交的数据里有啥奇怪的字符。我还特意去看看 CodeIgniter 的文档,说是框架默认不允许一些特殊字符作为键名。

我还真是服这个框架,你说你限制就限制,你好歹给个提示,直接蹦出个错误,谁知道是哪儿的问题!

重点:找到“真凶”

disallowed key characters.咋回事?这篇文章告诉你答案!

  • 我把表单里的每个字段都仔细看一遍,发现有一个字段的 name 属性里有个不太常见的特殊符号!
  • 我当时就想,会不会就是它搞的鬼?
  • 于是我赶紧把这个特殊符号给删,然后重新提交表单。

结果:搞定收工!

disallowed key characters.咋回事?这篇文章告诉你答案!

你猜怎么着?还真就好!页面正常显示,数据也成功提交!我当时那个激动,简直想放鞭炮庆祝一下!

所以说,遇到问题不要慌,要冷静分析,一点一点排查。这回的经历也让我学到不少东西,以后再遇到类似的问题,我就知道该怎么处理。 以后写代码还是得仔细点,不然一个小小的符号就能让你折腾半天!

大家要是使用字典,记得多使用get方法,我记得它可以接受一个key和一个默认值,这样能规避很多报错,希望这回分享能帮到大家伙!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]