2017-01-26 22 views
-1

这是我的路线方法不允许。必须是POST苗条的一个3

$app->post('/place_c', 'place_c_controller:place_c', 
function ($request, $response, $db_connect) { 

return $response; 
})->setName('place_c'); 

JavaScript代码

$("#frm_place_c").ajaxForm({ 
      url: "http://localhost/pub/place_c", 
      dataType: "text", 
      beforeSubmit: _Request, 
      success:  _Response, 


     }); 





function _Request(formData, jqForm, options) { 

    $(".loader").show(); 
    return true; 
}  
function _Response(responseText) { 

$(".loader").hide(); 


} 

而且我/ place_c通过AJAX发布数据给控制器,但我得到500内部服务器错误“方法不允许。必须是POST之一”然而使用$ app-> get可以很好地工作。我做错了什么?

+0

的岗位上应用的方法只有两个参数不3. – jmattheis

+0

试过了。仍然是一样的 –

+0

看看你的JavaScript控制台你实际做了什么请求和什么网址。特别是检查你是否在做CORS预检的OPTIONS请求。 –

回答

0

服务器响应数据与预期不同。

0

我回答类似的问题here

基本上,你的路由指定一个POST请求。因此,在你AJAX的要求,你可能想的方法属性添加到对象,像这样:

$("#frm_place_c").ajaxForm({ 
     url: "http://localhost/pub/place_c", 
     dataType: "text", 
     beforeSubmit: _Request, 
     success:  _Response, 
     method: "POST" 


    });