จากบทความที่แล้วได้มีการแนะนำการใช้ GET Method ใน FastAPI ซึ่งเป็นเป็นการรับค่าแบบ query string โดยเมื่อมีการส่งหรือรับค่ามันจะไปแสดงตรงช่อง url แต่จะแตกต่างจาก POST Method ที่จะเป็นการรับ-ส่งค่าแบบ request body ซึ่งมันจะไปแสดงที่ Inspect (F12) แท็บ Network
เริ่มแรกให้เราทำการ import modules เข้ามาตามรูปด้านล่าง
from fastapi import FastAPI
import uvicorn
from pydantic import BaseModel #<----- ทำการ import BaseModel เข้ามา
app = FastAPI()

โดย pydantic จะติดตั้งมาให้พร้อมกับตอนติดตั้ง pip install fastapi สามารถ import เข้ามาใช้งานได้เลยให้เราทำการสร้าง class ขึ้นมาตามรูปด้านล่าง
app = FastAPI()
Class User(BaseModel): #นำ class BaseModel มาใส่ไว้ในวงเล็บ
firstname : str
lastname : str
age : int

จากนั้นเราจะมาเรียกใช้งานมันกัน โดยตรงคำว่า request: User เราสามารถตั้งเป็นคำไหนก็ได้ ขอให้มันสอดคล้องจะได้ไม่งงกัน เช่น user: User
@app.post('/userinfo')
async def read_user(request: User):
data : {
'firstname': request.firstname,
'lastname' : request.lastname,
'age' : request.age
}
return data #จริง ๆ สามารถใช้ return request <--แบบนี้ได้เลย กรณีแสดงค่าทั้งหมด

โดยตรงคำว่า request: User เราสามารถตั้งเป็นคำไหนก็ได้ ขอให้มันสอดคล้องจะได้ไม่งงกัน เช่น user: User
โดยเมื่อเราเขียนโค้ดตามใยรูปด้านบนเสร็จก็ให้ Ctrl + s จากนั้นเปิด terminal แล้วพิมพ์
uvicorn main:app --reload
#จะได้ลิงก์มาใน Terminal เป็น localhost ของเรา
จากนั้นไปที่ http://127.0.0.1:8000/docs

จากนั้นเรามาทดสอบกัน

จะสังเกตว่ามันเป็นการ request body ซึ่งมันจะต้องส่งมาในรูปแบบของ Json เมื่อกรอกเสร็จกด Execute

เราสามารถนำ Request URL ไปทดสอบใน Postman ได้เช่นกัน โดยถ้าเป็น post ก็ให้เลือกส่งแบบ Json

ก็เป็นตัวอย่างสำหรับการรับส่งข้อมูลแบบ request body ซึ่งใน post method จะถูกนำไปใช้ในระบบ login ,insert ข้อมูลลง database เป็นต้น
อ้างอิง
REST API ใน Python พร้อม FastAPI และ Pydantic: คุณสมบัติอ่านอย่างเดียวในโมเดล, [ออนไลน์]
แหล่งที่มา: https://qathai.com/REST-API-ใน-Python-พร้อม-FastAPI-และ-pydantic:-คุณสมบัติอ่านอย่างเดียวในโมเดล
Python FastAPI Tutorial: Build a Fast API, [ออนไลน์], [CodingNomads]
แหล่งที่มา: https://codingnomads.co/blog/python-fastapi-tutorial
Getting Started with FastAPI - Create APIs Quickly using Python, [ออนไลน์]
แหล่งที่มา: https://dev.to/supanthapaul/getting-started-with-fastapi-create-apis-quickly-using-python-2a9f
- หัวเรื่อง
- Python Framework FastAPI
- หมวดหมู่
- สื่อการสอน โปแกรมเมอร์, สื่อการสอน โปแกรมเมอร์
- ฮิต
- 9396
- ผู้สร้างเอกสาร
- anawatj
- วันที่สร้างเอกสาร
- 2023-09-30 22:36:29
- รายละเอียด
สื่อการสอน Python Framework FastAPI
FastAPI คือ framework ที่ใช้สำหรับการทำ API ด้วยภาษา Python ซึ่งเป็นภาษาที่หลาย ๆ คนน่าจะคุ้นเคยดี โดยจุดเด่นของเจ้า FastAPI คือ ความรวดเร็วในการทำงาน ง่ายต่อการเรียนรู้ และมี API document อยู่ในตัวที่จะช่วยให้เราทดสอบไปพร้อมกับการพัฒนาได้อย่างทันที
รายละเอียดของไฟล์ดาวน์โหลด- Code การสร้าง Table ด้วย psycopg2 ใน FastAPI เขียน API เชื่อมฐานข้อมูล
- Code การใช้ Delete Method บน FastAPI
- Code การใช้งาน POST - Method สร้าง API
- Code การใช้ PUT - Method
- Code การใช้ router ใน FastAPI
- Code การใช้ Typing ใน FastAPI
