亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 AJAX Javascript 發送純文本表單數據

使用 AJAX Javascript 發送純文本表單數據

拉丁的傳說 2023-07-14 15:38:18
我正在嘗試通過 AJAX 將表單數據的內容發送到 python-flask 應用程序。這是 Javascript 代碼的基本部分function sendFormInfo(){? var formInfo = document.getElementById('formInfo');? var elems = formInfo.elements;? return new Promise(function(resolve, reject) {? ? var getFd = toFormFromElems(elems);? ? getFd? ? .then(function(fd){? ? ? fd.set('my_key', 'my_value')? ? ? inspectFormData(fd);? ? ? var timestamp = (new Date()).getTime();? ? ? $.ajax({? ? ? ? url: "/updategame" + '?_=' + timestamp,? ? ? ? type : "POST",? ? ? ? processData: false,? ? ? ? contentType: false,? ? ? ? dataType: "text",? ? ? ? data : fd? ? ? })? ? ? .done(function(respPost) {? ? ? ? resolve(respPost)? ? ? })? ? ? .fail(function(data) {? ? ? ? console.log("Post request failed.")? ? ? ? console.log(data);? ? ? });? ? ? })? ? })}function inspectFormData(inputFormData){? for(var pair of inputFormData.entries()) {? ? console.log(pair[0]+ '-> '+ pair[1]);??}}function toFormFromElems(elems){? return new Promise(function(resolve, reject){? ? var fd = new FormData();? ? for (var i = 0, elem; elem = elems[i++];){? ? ? // console.log(elem.id + " -> " + elem.value);? ? ? fd.set(String(elem.id), String(elem.value));? ? }? ? // console.log(fd);? ? resolve(fd);? })}以及 python 的:@main.route("/updategame", methods=["POST"])@login_requireddef update_game():? ? print(request.files)? ? print(request.files.keys())? ? return "success"在我看來,我可以正確填寫表單數據:但我在 python 端點得到一個空字典:雖然非常非常(是的,雙重非常)類似的方法已被證明可以工作,但是當發送視頻時(從畫布發送圖像,并等待 AJAX POST 響應)有人有什么建議嗎?我已經嘗試將緩存斷路器添加到請求中。
查看完整描述

1 回答

?
DIEA

TA貢獻1820條經驗 獲得超2個贊

如果您向 Flask 發送帶有表單數據的 POST 請求,它將到達request.form,而不是 request.files ,后者用于文件上傳,從而解釋了視頻上傳有效的原因。



查看完整回答
反對 回復 2023-07-14
  • 1 回答
  • 0 關注
  • 131 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號