簡單絮叨一下
前面聊cookie
和header
一些事情,今天主要聊聊關於響應的一些事情
響應就是介面的返回值,及狀態碼等,這個是必須要有的。其返回的資料主要是用於前端除錯頁面和測試進行測試的參考。
響應模型
注意點:
response_model
是「裝飾器」方法(get
,post
等)的乙個引數。不像之前的所有引數和請求體,它不屬於路徑操作函式。
response_model
就是定義返回值,因為response_model
被item
賦值,請求介面後返回與輸入的資料相同
啟動服務:
請求介面:
post請求引數:
請求結果:
如果我們輸入的是含密碼的,那上述那種返回與輸入相同的資料就不適合該需求了,那這樣就得定義輸出的模型:
注釋資訊:
emailstr
是郵件型別。
userin
是輸入模型,而userout
是輸出模型。
response_model=userout
是接收的輸出模型。
user: userin
是接收的輸入模型。
return user
雖說是返回輸入模型,但是我們已經宣告了輸出模型,因此,fastapi
將會負責過濾掉未在輸出模型中宣告的所有資料。
啟動服務:
請求介面:
post請求引數:
請求結果:
實際工作中,有些時候只需要返回設定的引數或者是要指定輸出結果,response_model_exclude_unset
引數就是僅返回顯式設定的值,而定義乙個id
來處理指定返回值。
response_model_exclude_unset傳true
response_model_exclude_unset=true
是僅返回顯式設定的值,意思就是你請求傳幾個引數就返回幾個引數。
啟動服務:
請求介面:
post請求引數:
請求結果:
指定返回值
就是向路徑操作傳送指定的id
,這類資料可在資料庫中獲取:
items
這個大字典,後續可在資料庫中獲取資料
啟動服務:
請求介面:
post請求引數:
請求結果:
再來聊聊response_model_include
和response_model_exclude
,response_model_include
是返回值包括哪些引數,而response_model_exclude
是返回值不包括哪些引數:
response_model_include
傳參
請求引數:
請求結果:
response_model_exclude
傳參
請求引數:
請求結果:
響應狀態碼
直接傳狀態碼
status_code
引數接收乙個表示http
狀態碼的數字。
引入status狀態包
http狀態碼解釋:
200 是預設狀態**,它表示一切「正常」。另乙個例子會是 201,「已建立」。它通常在資料庫中建立了一條新記錄後使用。
乙個特殊的例子是 204,「無內容」。此響應在沒有內容返回給客戶端時使用,因此該響應不能包含響應體。
乙個例子是 404,用於「未找到」響應。未完成,待續……對於來自客戶端的一般錯誤,你可以只使用 400。
一直在努力,希望你也是!
python fastapi自建HTTP爬蟲IP池
網路上搜尋一下有很多提供http 的 直接使用beautifulsoup將ip爬下來。html requests.get url text bs beautifulsoup html,html.perser findall select res requests.get url,headers he...
網頁請求響應(響應狀態碼,響應頭)
響應狀態碼表示伺服器的響應狀態。在爬蟲中,我們可以根據狀態碼來判斷伺服器響應狀態,如狀態碼為200,則證明成功返回資料,再進行進一步的處理,否則直接忽略。以下給出常見的錯誤 及錯誤原因 狀態碼說明 詳情100 繼續請求者應當繼續提出請求。伺服器已經接收到請求的一部分,正在等待其餘部分 101切換協議...
eclipse 響應慢 或 未響應
eclipse啟動正常,但在開啟工程時會出未響應的情況,在任務管理器中察看也是味應用。造成這種情況原因有3 一 cpu不夠用,在任務管理器中察看cpu會達到90 以上,甚至是100 剛才看了cpu才24 顯然問題不在這裡。二 記憶體不夠,在任務管理器中察看記憶體才用1.7g,我有機器記憶體4g,安裝...