首先让我说 Restler 中的新 API Explorer 很棒。对它的添加感到非常高兴。现在,以典型的方式,让我抱怨一些对我不起作用的东西......
Restler 可以返回多种格式的结果这一事实是一个非常好的功能,但我目前没有使用它(选择只使用 JSON 作为我的返回格式)。在 API Explorer 中,我希望所有对 .json 的引用都不会显示,因为这只会使服务架构的外观复杂化。
这是一个简单的例子:
class Users {
/**
* Preferences
*
* Preferences returns a dictionary of name-value pairs that provide input to applications that want to make user-specific decisions
*
* @url GET /{user_id}/preferences
**/
function preferences ($user_id , $which = 'all') {
return "$which preferences for {$user_id}";
}
/**
* GET Sensors
*
* Get a list of all sensors associated with a user.
*
* @url GET /{user_id}/sensor
**/
function sensor ($user_id) {
return "sensor";
}
/**
* GET Sensors by Type
*
* @param $user_id The user who's sensors you are interested in
* @param $type The type of sensor you want listed.
*
* @url GET /{user_id}/sensor/{type}
**/
function sensor_by_type ($user_id, $type) {
return "specific sensor";
}
/**
* ADD a Sensor
*
* @param $user_id The user who you'll be adding the sensor to
*
* @url POST /sensor
**/
function postSensor() {
return "post sensor";
}
}
在此示例中,API Explorer 如下所示:
我要删除的基本问题是删除所有“.json”引用,因为没有可选 .json 的调用结构可以正常工作。
此外,对于那些确实希望 .json 出现的人来说,还有一个次要问题是这个后项修饰符在哪里出现?在上面的示例中,您将 .json 附加到 GET 中的“用户”元素和 PUT 中的“传感器”元素。这与 HTTP 操作无关,而是似乎选择了紧接在第一个变量之前的元素,这对用户来说可能不直观,实际上在 Restler 中不是必需的(至少我的印象是你可以附加.json 链中的任何位置并获得所需的效果)。