摘要:前后端數(shù)據(jù)發(fā)送和接收由于筆者后臺使用的是框架接收和前端使用的是原生的和的發(fā)送,能力有限,在此僅寫下我開發(fā)項目過程中所得,歡迎指正交流。
前后端json數(shù)據(jù)發(fā)送和接收
一、flask中的json數(shù)據(jù)接收 1、利用flask的request.form.get()方法由于筆者后臺使用的是flask框架接收和前端使用的是原生的JavaScript和jQuery的ajax發(fā)送,能力有限,在此僅寫下我開發(fā)項目過程中所得,歡迎指正交流。
Python后臺部分代碼
from flask import Flask from flask import jsonify from flask import request import json ... # 登錄 @app.route("/flask/login", methods=["POST"]) def login(): data_ = request.form.get("data") data = json.loads(data) username = data["username"] password = data["password"] rem = False if data["remember"]: rem = True return jsonify({"login": Login.login(username, password, rem)}) # 返回布爾值2、 利用flask的request.get_data()方法
Python后臺代碼
from flask import Flask from flask import jsonify from flask import request import json ... # 登錄 @app.route("/flask/login", methods=["POST"]) def login(): data = request.get_data() data = json.loads(data) username = data["username"] password = data["password"] rem = False if data["remember"]: rem = True return jsonify({"login": Login.login(username, password, rem)}) # 返回布爾值3、利用flask的request.get_json()方法
Python后臺代碼
from flask import Flask from flask import jsonify from flask import request ... # 登錄 @app.route("/flask/login", methods=["POST"]) def login(): data = request.get_json() username = data["username"] password = data["password"] rem = False if data["remember"]: rem = True return jsonify({"login": Login.login(username, password, rem)}) # 返回布爾值二、前端發(fā)送json數(shù)據(jù) 1、原生XMLHttp發(fā)送
function login() { var username =document.getElementById("username").value; var password = document.getElementById("password").value; var remember =document.getElementById("remember").checked; var xmlhttp; if (window.XMLHttpRequest) { // IE7+, Firefox, Chrome, Opera, Safari 瀏覽器執(zhí)行代碼 xmlhttp=new XMLHttpRequest(); } else { // IE6, IE5 瀏覽器執(zhí)行代碼 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState===4 && xmlhttp.status===200) { ... } }; xmlhttp.open("POST","/flask/login",true); xmlhttp.setRequestHeader("Content-type","application/json"); // 后面這兩部很重要,我看網(wǎng)上很多都是使用xmlhttp.send("username="+username+"&password="+"),這樣接收還要解析一番感覺還是直接發(fā)送以下格式的好些 var data = { "username": username "password": password "remember": remember }; var data_json = JSON.stringify(data); xmlhttp.send(data_json); }
附:json數(shù)據(jù)解析
var text = xmlhttp.responseText; // 通過eval() 方法將json格式的字符串轉(zhuǎn)化為js對象,并進行解析獲取內(nèi)容 var result = eval("("+text+")"); if (result) { } else { alert("請輸入正確的用戶名和密碼"); }2、ajax發(fā)送
$(document).ready(function () { var data = { "username": "adamin", "password": "123456789", "remember": true } $.ajax({ url: "/flask/login", type: "POST", data: data, success: function () { } }) })
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/40667.html
摘要:前后端數(shù)據(jù)發(fā)送和接收由于筆者后臺使用的是框架接收和前端使用的是原生的和的發(fā)送,能力有限,在此僅寫下我開發(fā)項目過程中所得,歡迎指正交流。 前后端json數(shù)據(jù)發(fā)送和接收 由于筆者后臺使用的是flask框架接收和前端使用的是原生的JavaScript和jQuery的ajax發(fā)送,能力有限,在此僅寫下我開發(fā)項目過程中所得,歡迎指正交流。 一、flask中的json數(shù)據(jù)接收 1、利用flask的...
摘要:它主要是用來模擬各種請求的如等等與瀏覽器的區(qū)別在于有的瀏覽器不能輸出格式而更直觀接口返回的結(jié)果。 Postman測試工具調(diào)試接口詳細教程 簡介 Postman,...
摘要:為了體現(xiàn)前后端分離,提高開發(fā)效率的精髓。轉(zhuǎn)發(fā)消息服務(wù)器將收到的來自于發(fā)送方消息中的值作為要轉(zhuǎn)發(fā)的目標接收方,在服務(wù)器自身維護的對象中找到接收方的這個連接,然后將發(fā)送方的標識作為轉(zhuǎn)發(fā)給接收方。 背景 簡單的描述一下需求場景:應(yīng)用需要進行客戶端到客戶端的通信,websocket 就能很好的進行這一操作,目前 網(wǎng)易云信的 IM 等功能也是利用 websocket 進行的。 必要性 對前端開發(fā)...
摘要:超簡單深度睡眠模式下遠程采集溫濕度信息項目背景相關(guān)技術(shù)深度睡眠模式溫濕度采集數(shù)據(jù)收發(fā)前后端實現(xiàn)后端前端項目背景自己用收納箱做了一個用于存放打印耗材的干燥箱,想用閑置的開發(fā)板和溫濕度傳感器做一個遠程溫濕度監(jiān)測的小項目。 ...
摘要:使用方法服務(wù)器接收其它類型的事件服務(wù)器端中在傳輸數(shù)據(jù)時將頭中的設(shè)置為使用方法屬性使用二進制的數(shù)據(jù)類型連接服務(wù)器選擇的下屬協(xié)議只讀鏈接狀態(tài)只讀未發(fā)送至服務(wù)器的字節(jié)數(shù)只讀服務(wù)器選擇的擴展只讀關(guān)閉前的回調(diào)函數(shù)連接失敗后的回調(diào)函數(shù)從服務(wù)器接受到 EventSource 使用方法 var evtSource = new EventSource(url); // 服務(wù)器URL 接收 evtSour...
閱讀 2335·2021-10-09 09:41
閱讀 1777·2019-08-30 15:53
閱讀 1025·2019-08-30 15:52
閱讀 3469·2019-08-30 11:26
閱讀 799·2019-08-29 16:09
閱讀 3460·2019-08-29 13:25
閱讀 2294·2019-08-26 16:45
閱讀 1957·2019-08-26 11:51