国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

javascript - 怎么從flask中接受從jquery發(fā)送的json數(shù)據(jù)?

瀏覽:128日期:2023-10-12 17:12:19

問(wèn)題描述

flask app中從前端接受json的數(shù)據(jù),但是flask的request中并沒有接受成功,其中沒有數(shù)據(jù),換了很多函數(shù)都行不通。js代碼

$(function(){ $('#test').click(function(){$.ajax({ url: '{{ url_for(’main.getjson’) }}', type: 'POST', data: JSON.stringify({'n1': 'test1','n2': 'test2','n3': 'test3' }), dataType: 'json', success: function(data){var a = data.uservar texthtml = '<p>' + a + '</p>'$('#result').html(texthtml) }}); });});

flask中的視圖函數(shù):

@main.route(’/getjson’, methods = [’GET’, ’POST’])def getjson(): a = request.json if a:return jsonify(user = 'Right') return jsonify(user = 'error')

僅僅判斷request.json是不是存在,但是返回來(lái)的總是“error”的字符串。request.json中總是null。后來(lái)?yè)Q了request.args.get(),同樣行不通。到底是哪里出錯(cuò)了,真心求教。

問(wèn)題解答

回答1:

找到答案了,僅僅是在jquery部分出了問(wèn)題。$.ajax的參數(shù)contentType,默認(rèn)是 'application/x-www-form-urlencoded',需要把這個(gè)參數(shù)設(shè)置成application/json。

$.ajax({url: '{{ url_for(’main.getjson’) }}',type: 'POST',data: JSON.stringify({ 'n1': 'test1', 'n2': 'test2', 'n3': 'test3'}),contentType: 'application/json',dataType: 'json',success: function(data){ var a = data.user var texthtml = '<p>' + a + '</p>' $('#result').html(texthtml)} });

參考:https://flask.readthedocs.io/...http://stackoverflow.com/ques...

回答2:

jquery的ajax發(fā)送data的時(shí)候不需要JSON.stringify.他會(huì)自動(dòng)處理.

回答3:

根據(jù)你的描述,你的已經(jīng)把問(wèn)題找到了,為什么不繼續(xù)嘗試一下,或者看下文檔

@app.route(’/api’, methods=[’POST’])def api(): a = request.json b = request.get_data() c = request.values print a print b print c if a:return ’ok’ return ’error one’

輸出結(jié)果

None{'id':1}CombinedMultiDict([ImmutableMultiDict([]), ImmutableMultiDict([(’{'id':1}’, u’’)])])

request.json很奇葩,確實(shí)沒數(shù)據(jù),但是它是可以用的,你這里沒用的原因如下:

json If the mimetype is application/json this will contain the parsedJSON data. Otherwise this will be None. The get_json() method shouldbe used instead.但是我使用get_json(),它無(wú)情的報(bào)錯(cuò)說(shuō)AttributeError: ’Request’ object has no attribute ’get_json’

所以我只是成功使用過(guò)一次request.json,后來(lái)再也沒有成功過(guò),因?yàn)樗苌衿妫绻梢哉乙粋€(gè)替代request.json吧。

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 美国一级毛片免费看成人 | 99久久精品免费观看国产 | 国产精品福利视频萌白酱 | 正在播真实出轨炮对白 | 欧美日韩在线观看一区二区 | 91香蕉国产亚洲一区二区三区 | 欧美18毛片免费看 | 超级香蕉97视频在线观看一区 | 日本aaaa片毛片免费 | 成人69 | 国产视频一二三 | 国产精品久久视频 | 精品国产香蕉伊思人在线 | 亚洲在线视频免费观看 | 亚洲精品国精品久久99热 | 久久99精品久久久久久综合 | 国产男女猛烈无遮档免费视频网站 | 免费aa在线观看 男人的天堂 | baoyu121永久免费网站 | 性亚洲精品 | 碰碰久久| 国产高清精品久久久久久久 | 成年男人的天堂 | 国产欧美成人xxx视频 | 精品视频h | 欧美成人老熟妇暴潮毛片 | 国产成人tv在线观看 | 日本一级级特黄特色大片 | 亚洲综合色吧 | 美国免费三片在线观看 | 男女无遮掩做爰免费视频软件 | 日韩手机看片福利精品 | 日本精品久久久久久久久免费 | 99精品欧美| 免费高清国产 | 日本三级香港三级人妇99 | 久久精品国产亚洲7777 | 国产精品夜色视频一区二区 | 91玖玖| 久久性感视频 | 成人国产在线24小时播放视频 |