Mcl*_*ide 4 string cakephp param urlencode
我在CakePHP上相当新,因为有一些基本的东西,我曾经用Zend Framework做的,我用Cake打败了.
我正在开发一个项目,我必须将命名参数传递给控制器/动作.设置路由并传递参数非常简单,我的问题是当参数是urlencoded网址时.
例如:http://www.cakephp.com/controller/action/http%3A%2F%2Fwww.google.com无论控制器和操作设置如何,都会抛出404,但是传递/ controller/action/http: //www.google.com以某种方式工作,唯一的问题是它将http标识为命名参数.换句话说,如果我做/controller/action?url=http://www.google.com它会工作.
我用于此的工作是将值作为base64编码的字符串传递,但它带来了一些限制.例如,如果它是API,则无法保证使用API的系统可以将base64编码为字符串.
无论如何,最好的解决方案仍然是将url编码的字符串传递给命名参数.问题是,为什么CakePHP不接受urlencoded字符串作为参数,为什么它会抛出404?
在此先感谢所有人.
我已经围绕这个问题添加了一个工作.以前回答的帖子实际上回答了为什么会发生这种情况并解决其中一个问题.会发生什么是Apache上.htaccess的解决方法有点危险,因为它会禁用安全标准.
有两种方法可以通过代码解决这个问题(我正在使用它们):
它远非一个美丽的解决方案,但它绝对是一个实用的解决方案.
| 归档时间: |
|
| 查看次数: |
4049 次 |
| 最近记录: |