jQuery ajax请求在laravel应用中返回405(不允许POST)

辛格勒

我似乎无法弄清楚。这是Apache配置吗?我已经看到一些filter.php配置来添加POST,但是如果这是问题所在,它将放在laravel文档中,对吧?

路线:

Route::get('orders/add', 'OrderController@add');
Route::resource('orders', 'OrderController');

控制器(REST方法为空):

class OrderController extends \BaseController {
   public function add()
    {
       if (Request::ajax())
           return "ajax request ";
       else 
           return "not ajax";
    }
...

jQuery的:

function add()
{
   var tid = $('#sites input[type=radio]:checked').attr('id');

   $.ajax({
      type: "POST",
      url: 'add',
      data: { tid: tid }
   }).done( function (msg){
      alert(msg);
   });
}

发送按钮:

<button onclick="add()" id="formSubmit"> Carrinho </button>

当我单击按钮时,错误firefox在控制台上显示了我:

POST http://localhost/orders/add [HTTP/1.0 405 Method Not Allowed 17ms]

谢谢你们。

奥秘

Route::get需要一个GET HTTP标头。您需要使用Route::post

代替

Route::get('orders/add', 'OrderController@add');

你应该用

Route::post('orders/add', 'OrderController@add');

来源:Laravel路由文档

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章