1、fastapi快速服務器搭建
# -*- coding:utf-8 -*- from typing import List,Set,Dict from fastapi import FastAPI, Request, Form from fastapi.staticfiles import StaticFiles from fastapi.templating import Jinja2Templates import uvicorn from pydantic import Json, BaseModel from starlette.responses import RedirectResponse app = FastAPI(debug=True) app.mount("/static", StaticFiles(directory="static"), name = "static") # 掛載靜態文件,指定目錄 templates = Jinja2Templates(directory="templates") # 模板目錄 @app.get("/data") async def read_data(request:Request,data:str): # data = '八戒你瘦了!' return templates.TemplateResponse("index.html", {"request": request, "title": data,"imgurl":"/static/miss.png"}) # http://127.0.0.1:11510/data?data="八戒你瘦了!" # @app.get("/data") # async def read_data(): # # return "八戒你瘦了!,hello word!" @app.get("/") async def read_data(request:Request): # print(dt) print(6666666) return RedirectResponse("/data?data=八戒你瘦了!") # 創建數據模型 class Item(BaseModel): df: Dict # js請求注意:js對象轉json數據: JOSN.stringify();json數據轉js對象: JSON.parse(); @app.post("/jsoned") async def get_json(item:Item): df = {"title":"八戒你瘦了!","lst":[1,2,3,4,5]} # print(item.df) print(item.dict()) return {"data":df} # cmd啟動 # uvicorn appMain:app --host localhost --port 3344 --reload # if __name__ == '__main__': # uvicorn.run(app, host = "localhost", port = 3344)
2、js頁面發送jquery ajax post請求
df = {"df": {"dt1":[0,23,90.09]}}; console.log(df); $.ajax({ type: "post", url: "http://localhost:3344/jsoned", async: true, // headers:{"Content-Type":"application/json","accept":"application/json","name":"666"}, // dataType:"json", data:JSON.stringify(df), //http 請求 記住要把數據轉換為json格式數據 success: function (res) { console.log('成功檢測'); console.log(res); console.log(res["data"]["lst"]); }, error:function () { alert("返回數據失敗") } });