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捕获的网页信息拖入。
点击“运行”。
一切错误的原因都揭示出来了。