ホームページ  >  記事  >  バックエンド開発  >  Python を使用して簡単な画像のアップロードとストレージ サービスを実装する

Python を使用して簡単な画像のアップロードとストレージ サービスを実装する

高洛峰
高洛峰オリジナル
2017-03-16 15:51:502637ブラウズ

Gitハブアドレス: https://github.com/honmaple/maple-file

Flaskを使用して設計された簡単な画像アップロードサービス

あります写真を保存するには、クラウド サービス (Qiniu、Youpai など) が一般的に使用されますが、Qiniu

カスタム ドメイン名のような国内サービスでは、実際にはドメイン名の登録が必要です (

すみません
、最初の登録のためでした)。場所)面倒なので海外のものを選びました)、10ドルの無駄でした そして、Qiniuのようにローカルで写真をアップロードできるようにしたかったのですが、探しても見つかりませんでした。より適切なので、2日かけて自分で書きました

使用

当初の目的はローカルスクリプトとして公開することであったため、フロントエンドインターフェイスはありませんので、後で時間があるときに追加します

API

    /api/login
  • POST
    登录
  • /api/logout
  • GET
      注销
    • /api/アルバム
    • name アルバム名
      • description アルバムの説明
      • GET
      • アルバムリストを取得

      • POST
      • 新しいアルバム

      /api/albums /
    • pk アルバムID

    • name フォトブック名
      • description アルバムの説明
      • GET
      • アルバム情報を取得

      • PUT
      • アルバム情報を変更

      • 削除
      • 削除アルバム

      / api/images
    • 画像アップロード 画像リスト
      • アルバム アルバムID (デフォルトで新規作成
      • デフォルト
      • )

        GET
      • 画像リスト

      • 投稿
      • 写真をアップロード

      /api/images/ TE
    • 写真を削除

      • 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
      • デフォルト
      • も作成しますフォトアルバム

        python manager.py key
        ユーザーキーを表示
      • アップロード


        アップロード後の画像保存パス

      • 元の画像パス:

        UPLOAD_FOLDER + 'username' + 'photo' + %Y + %m + (时间戳+随机数).png
      • スケッチ
        パス:

        UPLOAD_FOLDER + 'username' + 'thumb' + %Y + %m + (时间戳+随机数).png
      • リクエスト

        ローカルアップロード

        りー                                                                                                                    

        以上がPython を使用して簡単な画像のアップロードとストレージ サービスを実装するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

        声明:
        この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。