0

2.0で実行されているcakephpアプリがあり、Firefoxでいくつかのエンコーディングの問題が発生しているようです。

アクセスしているURLは/newcms/ core / users / index / conditions [User] [group_id]:6で、outcmsシステムにフィルターを適用します。

FireFox以外のすべてで、リクエストオブジェクトで次のようになります

[params] => Array
        (
            [plugin] => core
            [controller] => users
            [action] => newcms_index
            [named] => Array
                (
                    [conditions] => Array
                        (
                            [User] => Array
                                (
                                    [group_id] => 6
                                )

                        )

                )

            [pass] => Array
                (
                )

            [prefix] => newcms
        )

これは正しく、すべてが正常に機能します。FireFoxで同じURLにアクセスすると、次のようになります。

[params] => Array
        (
            [plugin] => core
            [controller] => users
            [action] => newcms_index
            [named] => Array
                (
                    [conditions%5BUser%5D%5Bgroup_id%5D] => 6
                )

            [pass] => Array
                (
                )

            [prefix] => newcms
        )

名前付き条件値をURLエンコードしようとしましたが、うまくいきませんでした。

助言がありますか?

4

2 に答える 2

2

URLに角かっこと配列構造を使用するのはおそらく良い考えではありません。

なぜこのようなものを使用しないのですか?:

/newcms/core/users/index/user_group:6

次に、コントローラーでデータを処理します。

于 2012-04-04T16:02:20.863 に答える
0

GitHubで最新バージョンのケーキを少し掘り下げて遊んだ後、このFFの問題が修正されました(https://github.com/cakephp/cakephp/commit/e6905b44c3d4512b6989c59a1489bc983d88bcdc)。

URIで角かっこを渡すことについては何も誤りはありません。これは、FFが他のブラウザとは異なる方法で角かっこをエンコードする方法の問題でした。

于 2012-04-07T00:04:00.463 に答える