当使用Phil Sturgeon 的 CodeIgniter Restserver(这似乎是您正在使用的)时,您在application/controllers
目录中设置了一个控制器并扩展了他的类。
假设你调用你的控制器Foobar
,它看起来像这样:
class Foobar extends Rest_Controller {
//... your methods here
}
在这种情况下,您将访问此端点http://example.com/foobar
URL 引用您的控制器,而不是直接引用 Rest_Controller。
URL 如下所示:
http://example.com/{controller}/{method}/{param1}/{param2}/.../{paramN}
如果未指定方法,则默认为index()
此外,Restserver 允许您将方法映射到 HTTP 请求方法。这样
GET example.com/foobar 将映射到方法index_get()
POST example.com/foobar 将映射到方法index_post()
..等等。
我强烈建议您阅读文档
在您的示例中,您希望被调用的控制器位于application/controllers/site
.
但是,这可能已使用 htaccess 重写规则(检查.htaccess
文件)或通过重新定义的 CI 路由(检查application/config/routes.php
)进行了修改。
如果一切都失败了:
在默认配置下,您应该可以在此处找到它们,但是,CI 对路由的可塑性很强,很难说它们可能在哪里。您最好的选择是在目录中查找单词extends Rest_Controller
,因为无论控制器在哪里,它们都会扩展该类。