我有一个问题是从ios app调用服务器显示Disallowed Key Characters。我的网址中有_(" http://mydomain/mobileapi/index.php/C_mobileclient/user_login")。 我在服务器Input.php中更新了以下代码
!preg_match("/^[a-z0-9\x{4e00}-\x{9fa5}\:\;\.\,\?\!\@\#\$%\^\*\"\~\'+=\\\ &_\/\.\[\]-\}\{]+$/iu", $str)
更新后这个代码Android应用程序正常工作,但IOS应用程序无法正常工作并显示此错误。 (使用Ionic Framework 1开发的应用程序)
$http({
url: GeneralService.baseurl+ "/index.php/C_mobileclient/user_login", method: 'POST',
data: postData,
headers : {'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8'}
}).then(function(result) { console.log(result);
});
这一点运行良好,直到我的php版本5.3更新php版本5.6之后发生此错误。
答案 0 :(得分:0)
要允许这些字符只需在codeigniter CONFIG文件中添加以下内容 -
$config['permitted_uri_chars'] = '+=\a-z 0-9~%.:_-@$';