首页 > 解决方案 > Cakephp3:如何在 Json 中返回未转义的 URL

问题描述

我有一个 Rest 应用程序,我想取消我的控制器返回的 JSON URL。在 AppController 中,我调用了 requestHandler:

$this->loadComponent('RequestHandler');

在我的路线中,我有:

$routes->setExtensions(['json']);

我这样设置我的响应数据:

$this->set(['url1' => $url, 'url2' => $url2]);

它工作正常,但它返回转义的 URL,如:

"https:\/\/example.com\/v1\/v\/save\/abc"

有没有办法让 URL 不转义(来自 json_encode 的 JSON_UNESCAPED_SLASHES)?

标签: cakephpcakephp-3.0

解决方案


回答(对我自己),将这一行放在 AppController 或 ApiController 中:

$this->set('_jsonOptions', JSON_UNESCAPED_SLASHES);

推荐阅读