我有问题。 Restler 3中的工作路径如何?
class eventos {
function index($desde=0, $hasta=0) {}
function get($num, $p2='optional') {
if($p2 != 'attend'){}
else{}
}
function post($num, $p2, $request_data = null){
if($p2 == 'comment'){}
if($p2 == 'attend'){}
}
}
我需要:
GET ... public / index.php / eventos /(带2个参数)好的!
POST ... public / index.php / eventos /(4-5参数)它是如何工作的?
GET ... public / index.php / eventos / {id} ok!
GET ... public / index.php / eventos / {id} /参加没有工作!工作如果... eventos / x?p2 =参加,但我不想要这个,我想... eventos / x /参加
POST ... public / index.php / eventos / {id} / attend(X参数)ok!
POST ... public / index.php / eventos / {id} / comment(带2个参数)ok!
谢谢!
答案 0 :(得分:0)
(我假设通过“2个参数”,你的意思是查询字符串参数)
对于Restler 3,需要参数作为路径的一部分(例如eventos / x / 参加)。您想要成为可选项的任何内容都来自查询字符串。
由于您已指定GET的$ p2为可选项,因此它只能来自查询字符串:eventos / x?p2 = attend。
如果要覆盖此设置并返回Rester 2方法,可以按照此处的说明关闭此自动路由:http://restler3.luracast.com/examples/_006_routing/readme.html
关于4-5参数的POST问题,如果您需要它们:
function post($id, $p1, $p1, $p3, $p4){
......或者如果它们是可选的:
function post($id, $p2, $request_data = null){
然后将POST正文中的4-5个参数传递给URL eventos / attend或eventos / comment。