0

我遇到了 Luracast restler 的路由缓存问题。例如,我有 2 个网址:

  1. /api/service/resale/getmapinfo
  2. /api/service/precon/getmapinfo

他们相应地使用 2 个类:

  1. 转售服务
  2. PreconService

当我到达第一个 url 时,缓存中会出现第一类方法的信息。

然后我尝试访问第二个 url,然后restler 读取缓存并找到只有第一类的路由,所以我收到 404 错误(因为没有关于第二类的信息)。

此外,当我第一次访问不正确的 url(故意)时,routes.php缓存保存为空数组。然后我在我尝试访问的所有 url 上得到 404。

基本上我在代码中看到的是缓存系统不是基于类的,而是有一个只写一次的公共缓存,当你第一次到达一个 url 时。请建议,是我做错了什么还是这是restler的不正确行为?

4

1 回答 1

1

看起来您需要重新生成,routes.php因为您添加了新类和/或修改了 api 方法,您可以简单地删除routes.php以根据最新设置创建新的

理想情况下,当您在开发 api 的过程中不要打开production_mode

所以而不是

$r = new Restler(true); //in production mode

$r = new Restler(); //in debug mode, will generate routes every time

或者如果您想查看生成的路线,但routes.php每次都要覆盖

$r = new Restler(true,true);
于 2012-09-07T02:16:01.993 回答