GitHub網址: https://github.com/honmaple/maple-file
設計初衷
對於圖片的儲存,有很多選擇,一般採用雲端服務如(七牛,又拍等),但是國內的服務像七牛
自訂網域竟然需要網域備案(Excuse me,當初就是因為備案麻煩才選擇國外的),而且浪費了我十塊錢,
而我又想像七牛一樣可以直接在本地就可以上傳圖片,找來找去,沒有找到一個比較合適的,所以花兩天時間自己寫了一個
使用
由於初衷是本地腳本就可以發布,所以沒有前端介面,等以後有時間了再加上
# API
/api/login
-
#POST
登录
/api/logout
-
#GET
注销
/api/albums
name 相簿名稱
description 相簿描述
#GET
取得相簿清單POST
新相簿-
/api /albums/
pk 相簿ID
-
#/api/images
images 上傳圖片清單
album 相簿ID(預設會新建一個default相簿)
#GET
取得圖片清單POST
#已上傳圖片/api/images/
#name 圖片名稱
- ##description 圖片描述
- GET
取得圖片資訊
- PUT
修改圖片資訊
- DELETE
刪除圖片
class Config(object):
DEBUG = True # 生产环境设置为False
SECRET_KEY = 'ccc' # import os;os.urandom(24)
SECRET_KEY_SALT = 'ssss'
JSON_AS_ASCII = False
PERMANENT_SESSION_LIFETIME = timedelta(days=3)
PER_PAGE = 10 # 分页
ADMIN_URL = '/admin/aaaaa' # 后台地址
LOGIN_TOKEN_HEADER = 'Api-Key' # 将会影响到后面headers设置
LOGIN_TOKEN = 'api_key' #url?api_key=21312313
MIDDLEWARE = ['storage.common.middleware.CommonMiddleware']
SQLALCHEMY_TRACK_MODIFICATIONS = False
SQLALCHEMY_DATABASE_URI = 'sqlite:///test.db'
# SQLALCHEMY_ECHO = DEBUG
UPLOAD_ALLOWED_EXTENSIONS = set(['png', 'jpg', 'jpeg']) # 允许上传的扩展名
UPLOAD_FOLDER_ROOT = os.path.dirname(os.path.abspath(file))
UPLOAD_FOLDER_PATH = 'images' # 相对于当前文件路径的地址
UPLOAD_FOLDER = os.path.join(UPLOAD_FOLDER_ROOT, UPLOAD_FOLDER_PATH)
建立帳戶python manager.py create_user
將同時建立一個default的相簿
python manager.py key顯示使用者key上傳上傳後圖片儲存路徑
- #原圖路徑:
UPLOAD_FOLDER + 'username' + 'photo' + %Y + %m + (时间戳+随机数).png
-
縮圖路徑:
UPLOAD_FOLDER + 'username' + 'thumb' + %Y + %m + (时间戳+随机数).png
requests本機上傳
import requests def images(): url = 'http://127.0.0.1:8000/api/images' files = {'images': open('desktop.png', 'rb')} multiple_files = [ ('images', ('11.png', open('11.png', 'rb'), 'image/png')), ('images', ('desktop.png', open('desktop.png', 'rb'), 'image/png')) ] headers = { 'Api-Key': 'InhpeWFuZzA4MDdJBtx4AWlPpI_Oxx1Ki8', 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36' } # r = requests.post(url, files=multiple_files, headers=headers) r = requests.post(url, files=files, headers=headers) print(r.text)
#
以上是使用Python實作一個簡單的圖片上傳儲存服務的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文討論了版本3.10中介紹的Python的新“匹配”語句,該語句與其他語言相同。它增強了代碼的可讀性,並為傳統的if-elif-el提供了性能優勢

Python中的功能註釋將元數據添加到函數中,以進行類型檢查,文檔和IDE支持。它們增強了代碼的可讀性,維護,並且在API開發,數據科學和圖書館創建中至關重要。

本文討論了Python中的單位測試,其好處以及如何有效編寫它們。它突出顯示了諸如UNITSEST和PYTEST之類的工具進行測試。

文章討論了Python的\ _ \ _ Init \ _ \ _()方法和Self在初始化對象屬性中的作用。還涵蓋了其他類方法和繼承對\ _ \ _ Init \ _ \ _()的影響。

本文討論了python中@classmethod,@staticmethod和實例方法之間的差異,詳細介紹了它們的屬性,用例和好處。它說明瞭如何根據所需功能選擇正確的方法類型和DA

Inpython,YouAppendElementStoAlistusingTheAppend()方法。 1)useappend()forsingleelements:my_list.append(4).2)useextend()orextend()或= formultiplelements:my_list.extend.extend(emote_list)ormy_list = [4,5,6] .3)useInsert()forspefificpositions:my_list.insert(1,5).beaware


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具