Laravel 用js jquery,調Post請求時,出現了500錯誤

1.

在Laravel用《 Laravel 中各種Url帶參數傳遞》解決了Get、Post的參數,怎樣傳遞到 View::make($yourview) 的問題之後,

我開始正式測試GTO(任務時間管理)系統的頁面。

其它一切正常,

我開始調試以下代碼:

 <script type="text/javascript" language="JavaScript">
        function gto_manage_input() {
                var url = "http://localhost:80/todo/gto";
                var data = {
                    new_text: gto_manage_input_str
                }
                jQuery.post(url, data, myPostSuccess)
        }
 </script>
 <button type="button" name="btn_gto_manage" 
                       style="margin-top: 40px;padding: 0px"
                       onclick="gto_manage_input()">
                產生並記錄你的思考
 </button>



此時,每次點擊提交按鈕後,
用Fiddler監測,都出出現 500 Internal Server Error 錯誤。

2.開始進行log調試

開始打log調試,js 中的調試方式是 alert() ————> “彈出對話框”。

 <script type="text/javascript" language="JavaScript">
        function gto_manage_input() {
                alert( "post_post_post_post" )

                //var url = "http://localhost:80/todo/gto";
                //var data = {
                //    new_text: gto_manage_input_str
                //}
                //jQuery.post(url, data, myPostSuccess)
        }
 </script>

結果:正常彈出。

 <script type="text/javascript" language="JavaScript">
        function gto_manage_input() {
                //alert( "post_post_post_post" ) 

                var url = "http://localhost:80/todo/gto";
                var data = {
                    new_text: gto_manage_input_str
                }
                alert ( gto_manager_input_str ) ;//原爲一串字符串。
                //jQuery.post(url, data, myPostSuccess)
        }
 </script>

結果:可以正常彈出。

 <script type="text/javascript" language="JavaScript">
        function gto_manage_input() {
                //alert( "post_post_post_post" )

                var url = "http://localhost:80/todo/gto";
                var data = {
                    new_text: gto_manage_input_str
                }
                jQuery.post(url, data, myPostSuccess)

                alert( "gto_manage_input_str" )//原爲一串字符串。
        }
 </script>

結果:沒有彈出的內容。且出現 500 Internal Server Error錯誤。

於是,大概就可以猜測 ————> 是 jQuey.post() 這一句出現了某種問題。

3.繼續使用 Fiddler 調試

查看Fiddler的500 返回信息,
發現了以前忽略的一點————>具體 500的Response中,返回了什麼內容?

點開 Inspector ———— TextView,查看內容。

內容文字非常多,
簡略的掃視一眼,是類似 “Whoops, looks like something went wrong.” 這樣的Laravel報錯網頁。

這下就非常好解決了。

我們找到 html在線運行網站 網頁HTML代碼在線運行器
將Fiddler捕獲的網頁信息拖入。
點擊“運行”。

一切錯誤的原因都揭示出來了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章