我似乎无法想出这个。
班级:
class Assets {
function getOne($id) {
$asset = DBO_Asset::getOneByPublicId($id);
return $asset->id;
}
}
index.php:
require_once 'restler/restler.php';
require_once 'API/Assets.php';
$rest = new Restler();
$rest->addAPIClass("Assets");
$rest->handle();
网址:
http://localhost/api/index.php/assets/getOne/8TWVTZAU
结果:
{
"error": {
"code": 404,
"message": "Not Found"
}
}
我不知道为什么这会创建404,但我按照说明进行操作,但我仍然无法进行任何操作。有人可以帮我解决这个问题吗?
答案 0 :(得分:1)
Restler使用get
,post
,put
,delete
作为方法前缀,自动将它们映射到相应的HTTP方法/动词
GET是默认的HTTP方法,所以如果你不使用上述任何一个方法作为前缀,它将被映射到GET方法
您的api目前正在映射到以下网址
http://localhost/api/index.php/assets/one/8TWVTZAU
如果网址中的getOne
对您很重要,请使用@url
评论,如下所示,以此方式手动路由
class Assets
{
/**
* @url GET getOne/:id
* @url GET getOne
*/
function getOne($id)
{
$asset = DBO_Asset::getOneByPublicId($id);
return $asset->id;
}
}