我试图将数据库中的所有帖子作为列表。我一直收到错误说
Uncaught SyntaxError: Unexpected token < in JSON at position 0
at JSON.parse (<anonymous>)
at Object.success (open:42)
at j (jquery.min.js:2)
at Object.fireWith [as resolveWith] (jquery.min.js:2)
at x (jquery.min.js:5)
at XMLHttpRequest.b (jquery.min.js:5)
我应用了来自https://code.tutsplus.com/tutorials/creating-a-web-app-from-scratch-using-python-flask-and-mysql-part-4--cms-23187的代码,当我按照完全相同的方式运行时,它就有效。 我正在做的是一个告示板,它应该在我打开这个页面时返回所有存储的帖子。需要你的帮助。谢谢。 以下是我的代码。
app.py
@app.route('/getOpenList')
def showOpenList():
try:
if session.get('user'):
con = mysql.connect()
cursor = con.cursor()
cursor.callproc('sp_showOpenList')
openlist = cursor.fetchall()
openlist_dict = []
for lists in openlist:
openlist_dict = {
'Id': lists[0],
'Title': lists[1],
'Content': lists[2],
'Writer': lists[3],
'Date': lists[4]}
listOpen_dict.append(openlist_dict)
return json.dumps(listOpen_dict)
else:
return render_template('error.html')
except Exception as e:
return render_template('error.html')
sp_showOpenList是&#34;从打开&#34;中选择*。
ann_etc.html
....
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<link rel="stylesheet" href="/static/css/style.css"/>
<script type="text/javascript" src="phonegap.js" charset="utf8"></script>
<script src="../static/js/jquery.min.js"></script>
<script>
$(function(){
$.ajax({
url : '/getOpenList',
type : 'GET',
success: function(res){
var openObj = JSON.parse(res);
$('#ulist').empty();
$('#listTemplate').tmpl(openObj).appendTo('#ulist');
},
error: function(error){
console.log(error);
}
});
}); </script>
</head>
<script id="listTemplate" type="text/x-jQuery-tmpl">
<li class="list-group-item">
<div class="checkbox">
<label>
${Id}
|
</label>
</div>
<div class="checkbox">
<label>
${Title}
|
${Writer}
|
${Date}
</label>
</div>
</li>
</script>
<div class="row">
<div class="col-md-12">
<div class="panel-body">
<ul id="ulist" class="list-group" display="inline-block">
</ul>
</div> </div>
</div>