Slim API不响应POST路由

时间:2013-07-12 14:58:51

标签: php rest slim

过去几天我一直在整合Slim API来处理一些PHP Web服务。使用GET的前几个服务是直接的并且没有问题。但是,在尝试集成某些POST方法时,我没有收到该服务的响应。我甚至尝试过一个简单的回声来查看是否正在调用该服务。在每种情况下,都没有回报。下面的代码,为清楚起见,已删除了一些方法。

POST方法没有响应的任何原因?谢谢! VIV

$app->get('/login/:un/:pw/:type','login');
$app->get('/browseMO/:prm1/:prm2', 'browseMedia');
$app->get('/usersReviews/:userID','usersReviews');
$app->get('/pubsReviews/:userID','pubsReviews');    
$app->get('/productReviews/:productID','getProductReviews');
$app->get('/productAvg/:productID','averageReviewsByOProduct');
$app->post('/userUpd','updateUserInfo');
$app->run();

function averageReviewsByOProduct($productID){
    reviews::getAvgReviewByProduct($productID);
}
function browseMedia($param1, $param2){
    browseMediaObjects::getMedia($param1, $param2);
}   
function updateUserInfo(){
    // $request = Slim::getInstance()->request();
    // $body = $request->getBody();
    echo "UPDATE CALLED"; // never reached
}   

1 个答案:

答案 0 :(得分:0)

尝试在slim post声明中创建一个匿名函数,看看该函数是否被调用。如果没有,那就是苗条的东西。如果是这样,那就是你的代码。

$app->post('/userUpd',function() use ($app) {
    echo 'Test';
});

如果不起作用,请确保正确返回数据。例如,上面的内容正确地为需要文本字符串响应的AJAX调用返回数据。