日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)FastAPI教程:FastAPI教程JSON兼容編碼器

在某些情況下,您可能需要轉(zhuǎn)換數(shù)據(jù)類型(如Pydantic模型),將其轉(zhuǎn)換為與JSON兼容的數(shù)據(jù)結(jié)構(gòu)(如dict,list等)。

在巴楚等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站建設(shè)、網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作按需制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),全網(wǎng)營銷推廣,外貿(mào)網(wǎng)站建設(shè),巴楚網(wǎng)站建設(shè)費(fèi)用合理。

例如,如果您需要將其存儲在數(shù)據(jù)庫中。

為此,F(xiàn)astAPI提供了一個jsonable_encoder()函數(shù)。

使用 jsonable_encoder

假設(shè)您有一個fake_db僅接收 JSON 兼容數(shù)據(jù)的數(shù)據(jù)庫。

例如,它不接收datetime對象,因?yàn)檫@些對象與 JSON 不兼容。

因此,必須將datetime對象轉(zhuǎn)換為str包含ISO 格式數(shù)據(jù)的對象。

同樣,該數(shù)據(jù)庫不會接收 Pydantic 模型(具有屬性的對象),只會接收dict.

你可以用jsonable_encoder它。

它接收一個對象,如 Pydantic 模型,并返回一個 JSON 兼容版本:

from datetime import datetime
from typing import Optional

from fastapi import FastAPI
from fastapi.encoders import jsonable_encoder
from pydantic import BaseModel

fake_db = {}


class Item(BaseModel):
    title: str
    timestamp: datetime
    description: Optional[str] = None


app = FastAPI()


@app.put("/items/{id}")
def update_item(id: str, item: Item):
    json_compatible_item_data = jsonable_encoder(item)
    fake_db[id] = json_compatible_item_data

在此示例中,它將 Pydantic 模型轉(zhuǎn)換為一個字典,并將這個datetime轉(zhuǎn)換為一個字符串。

調(diào)用它的結(jié)果是可以用 Python 標(biāo)準(zhǔn)編碼的東西json.dumps()。

它不會str以 JSON 格式(作為字符串)返回包含數(shù)據(jù)的大文件。它返回一個 Python 標(biāo)準(zhǔn)數(shù)據(jù)結(jié)構(gòu)(例如 a dict),其值和子值都與 JSON 兼容。

FastAPI內(nèi)部實(shí)際上使用jsonable_encoder來轉(zhuǎn)換數(shù)據(jù)。但它在許多其他場景中很有用。


分享文章:創(chuàng)新互聯(lián)FastAPI教程:FastAPI教程JSON兼容編碼器
文章路徑:http://m.5511xx.com/article/codehji.html