OSS 的作用
這個OSS 存儲能夠幫助我們完成很多新的需求 , 如果你是土豪你可以把它當成一個網盤來使用,如果你是個後端開發者那麼恭喜你,你就相當於有了一臺靜態資源服務器 ! 你可以把圖片以及靜態頁面放到這裏 ! 通過OSS獲取需要的資源,從而減少服務器的IO操作~,不止如此,一些視頻類的網站還可以把需要保持的視頻存儲到這裏,OSS還爲我們提供了很多圖片處理API,包括防盜鏈、水印…
阿里雲對象存儲OSS,主要是用於存儲靜態資源文件,它提供了很多方便的操作圖片的方法(縮放旋轉水印等),在實現了OSS的基礎上,我們也可以通過購買阿里雲的CDN服務輕鬆的實現內容的分發 !
什麼是OSS
阿里雲對象存儲服務(Object Storage Service,簡稱 OSS),是阿里雲提供的海量、安全、低成本、高可靠的雲存儲服務。它具有與平臺無關的RESTful API接口,能夠提供99.99999999%的服務持久性… 阿里雲OSS詳細瞭解可以參考這個文檔 , 這裏主要介紹的是使用方式 !
想要使用OSS 存儲第一步,先購買阿里雲的OSS存儲服務,現在有特惠 0.9元 兩年40G,當然如果還有更高需求的話那就自己看情況購買 !
如何用Python對接阿里雲OSS-SDK?
阿里雲sdk傳送門 --> 阿里雲python-sdk
如何在項目中調用?可以參考我下面的python代碼。
安裝SDK以及讓 HTTP 服務人類的requests庫(爲了傳輸網絡鏈接)
pip install oss2
pip install requests
詳情代碼塊
# -*- coding: utf-8 -*-
import os
import time
import requests
import oss2
def put_to_oss(name, link):
# # 阿里雲主賬號AccessKey擁有所有API的訪問權限,風險很高。強烈建議您創建並使用RAM賬號進行API訪問或日常運維,請登錄 https://ram.console.aliyun.com 創建RAM賬號。
auth = oss2.Auth('<yourAccessKeyId>', '<yourAccessKeySecret>')
# Endpoint以杭州爲例,其它Region請按實際情況填寫。
bucket = oss2.Bucket(auth, 'http://oss-cn-hangzhou.aliyuncs.com', '<yourBucketName>')
input = requests.get(link)
if '.jpg' in link or '.png' in link:
# <yourObjectName>
bucket.put_object('cgwas/cloud/images/{}'.format(name), input)
else:
# <yourObjectName>
bucket.put_object('cgwas/fileyunketang/{}'.format(name), input)
print('上傳成功')
time.sleep(3)
# 設置此簽名URL在24小時內有效。
if '.jpg' in link or '.png' in link:
# <yourObjectName>
url = bucket.sign_url('GET', 'cgwas/cloud/images/{}'.format(name), 60 * 60 * 24)
else:
# <yourObjectName>
url = bucket.sign_url('GET', 'cgwas/fileyunketang/{}'.format(name), 60 * 60 * 24)
return url
if __name__ == '__main__':
print(put_to_oss('1558689231407.zip'))