日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python后端从数据库请求数据给到前端的具体实现

發(fā)布時(shí)間:2024/4/15 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python后端从数据库请求数据给到前端的具体实现 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

先來貼一竄代碼讓大家理解前端/后端/數(shù)據(jù)庫的工作原理,

首先簡要說明:前端向后端請求數(shù)據(jù),后端根據(jù)前端請求數(shù)據(jù)的類別分析其需求,并連接到數(shù)據(jù)庫獲取相應(yīng)數(shù)據(jù):

來一段簡單的實(shí)例代碼模擬淘寶商城:

前端代碼:

<!DOCTYPE html> <html><head><meta charset="UTF-8"><title></title><script src="js/vue.js" type="text/javascript" charset="utf-8"></script><script src="js/socket.io.js" type="text/javascript" charset="utf-8"></script><script src="js/jquery-3.3.1.min.js" type="text/javascript" charset="utf-8"></script></head><body><div id="app"><div class="conList"><div class="content" v-for='item in contentList'><h3>{{item[1]}}</h3><img :src="item[2]"/><p>價(jià)格:{{item[3]}}</p><p>數(shù)量:{{item[4]}}</p></div></div></div><script type="text/javascript">
      //連接到本地服務(wù)器var socket=io('http://localhost:7444')var app=new Vue({el:'#app',data:{contentList:[],},mounted:function(){//數(shù)據(jù)加載后向后臺請求數(shù)據(jù),請求數(shù)據(jù)名稱為getContentListsocket.emit('message','getContentList')}})//監(jiān)聽后端返回的數(shù)據(jù)socket.on('reply',function(data){//如果返回?cái)?shù)據(jù)類型為contentList則做如下操作if (data.type=='getContentList'){app.contentList=data.data}// console.log('data',data.data) })</script></body> </html>

后端socketio框架服務(wù)器:

import socketio import eventlet import random import pymysql# 實(shí)例化socketio對象 sio=socketio.Server()@sio.on('connect') def connect(sid,environ):print('environ123',environ)# 監(jiān)聽前端傳入的請求數(shù)據(jù) # 根據(jù)請求數(shù)據(jù)連接數(shù)據(jù)庫獲取目標(biāo)數(shù)據(jù) @sio.on('message') def message(sid,data):print('message',data)if data=='getContentList':# 連接數(shù)據(jù)庫db=pymysql.connect('localhost','root','123456','python1')# 使用 cursor() 方法創(chuàng)建一個(gè)游標(biāo)對象 cursorcursor=db.cursor()#mysql語句sql='select item_id,item_title,item_image,item_price,num from tb_cart;'# 執(zhí)行sql語句cursor.execute(sql)# 獲取所有游標(biāo)data1=cursor.fetchall()# 因?yàn)閐ata1為元組,到傳到前端只能讀取到一條信息,所以要轉(zhuǎn)成列表data=list(data1)# 給前端返回?cái)?shù)據(jù)標(biāo)名數(shù)據(jù)類型,前端好區(qū)分需求數(shù)據(jù)content={'type':'getContentList','data':data}print(data,'12311111')# 將整理好的數(shù)據(jù)返回到前端sio.emit('reply',content)

@sio.on(
'disconnect') def disconnect(sid):print('disconnect123',sid)if __name__=='__main__':# sio通過middleware轉(zhuǎn)為應(yīng)用服務(wù)app=socketio.Middleware(sio)# 依賴eventlet網(wǎng)關(guān)服務(wù)器eventlet.wsgi.server(eventlet.listen(('',7444)),app)

?

轉(zhuǎn)載于:https://www.cnblogs.com/Dark-fire-liehuo/p/9818858.html

總結(jié)

以上是生活随笔為你收集整理的python后端从数据库请求数据给到前端的具体实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。