2015-11-11 72 views
0

目前,我正在尝试使用ajax向服务器发送消息(使用即时通讯工具),保存消息并使用消息进行更新。但是,每当我提交它时,它都会返回一个500内部服务器错误,如果我将token:$('#token')更改为'_token' : token,因为我已经看到here,它会完全超时。Laravel 5.0 ajax消息提交返回错误或超时

阿贾克斯

function submitIMchat(){ 
     console.log($('#IMchat-submit-message').val()); 
     console.log($('#token').val()); 
     $.ajax({ 
      url: "{{ action('[email protected]') }}", 
      type: "post", 
      dataType:'json', 
      data: ({ token:$('#token'), id:{{ Session::get('IMchatuser') }}, message:$('#IMchat-submit-message').val() }), 
      success: function(data){ 
       console.log(data); 
       return false; 
       } 

     }) 
     .error(function(data) { 
     var errors = data.responseJSON; 
     console.log('server errors',errors); 
     }); 
    }; 

形式

<form action="#" onsubmit="submitIMchat()"> 
    <input type="hidden" id="token" value="{{ csrf_token() }}"> 
    <input id="IMchat-submit-message" type="text" style="width:100%;"> 
</form> 

路线

Route::post('sendAjaxMessage', '[email protected]'); 

谁能告诉什么可能是WRO用我的代码在这里?如果需要其他信息,请告诉我。 注意:我没有包含sendAjaxMessage,因为它尚未执行该功能。

谢谢。

+1

500内部服务器错误可能回答你的问题。查找日志文件以查看有关触发此错误的更多详细信息。 – user2479930

+0

如果你还没有创建sendAjaxMessage方法,那很可能是这个问题。 – user2479930

+0

@JoachimMartinsen我已经创建了它,但是它并没有执行它。此外,500内部服务器错误没有任何可以识别错误的信息。 '@ \t的jquery-1.10.2.min.js:6 x.extend.ajax \t \t @ jQuery的1.10.2.min.js:6 submitIMchat \t \t @动漫:627 的onsubmit \t \t @动漫:1467 ' –

回答

0

我终于解决了这个问题。这与我如何在sendAjaxMessage函数中获取变量有关:当我需要使用Input::all()获取表单值并将它们设置为单个变量时,我将它视为请求。另外,发送给函数的消息最终保存为$ message,而创建并保存的Message对象也被命名为$ message。因此,$message->message = $message会中断。