透過API POST影像至server端 ft. Django, Djangorestframework
虛擬環境
在開始之前可以先透過virtualenv套件來打包虛擬環境
安裝套件
1 | pip install virtualenv |
接著進到欲建立環境的資料夾內輸入以下指令即可建立虛擬環境並啟用 #on windows
1 | mkdir server #建立專案名稱 |
啟用後可以發現前面多了(venv) 這樣就是啟用成功囉!
目前專案的架構會如下:
server/ # 專案名稱
venv/ # 虛擬環境
Lib/
Scripts/
.gitignore
pyvenv.cfg
環境設定
在開始之前需要安裝相關套件
1 | pip install Django |
建立Django專案
接著將路徑切回server資料夾下 開始建立專案資料夾囉!
1 | django-admin startproject server |
目前專案的架構會如下:
server/ # 專案名稱
server/ # App名稱
__init__.py
asgi.py
setting.py # 專案的設定檔
urls.py # 專案的URL request的程式
wsgi.py
manage.py # 管理Django專案的程式
venv/ # 虛擬環境
Lib/
Scripts/
.gitignore
pyvenv.cfg
Django操作指令
建立完成後基本上就可以開始運作了
1 | python manage.py makemigrations #創建模型資料庫 |
關於模型與資料庫的部分就不多解釋啦 因為還有牽扯到許多東西 如果想要了解如何運用的可以自行查詢資料
建立超級用戶可以管理資料庫內的東西 在運行的時候進入到 http://localhost:8000/admin/ 即可進入到管理者介面~
程式碼
1 | from django.contrib import admin |
在server/server資料夾下建立views.py並新增以下內容
1 | from django.http import JsonResponse |
這樣就完成啦!!
因此我們只要運行程式後post至 http://localhost:8000/server/ 並夾帶我們想要丟之影像 就可以放照片到server端上並將影像存至server端
至於要怎麼post呢?
除了可以透過postman這個工具以外,我們也可以利用python的request套件來post資料~
以下為簡單的範例程式碼
1 | import os |
整體來說就是在運行 python manage.py runserver 後我們的api就是處於可以使用的狀態下
接著我們再透過例外一個python程式(or postman工具)來post影像到該server端 這樣server端就可以接收到我們的資料啦!
(兩個檔案同時運行 python manage.py runserver & python upload.py)
這樣簡單的api就完成了!
參考資料
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment
GitalkFacebook Comments