Title

七牛云使用

视频托管平台

我们图片,视频不在放在media中,因为影响服务器性能
# 存储视频,图片,文件
  1 meida
    2 第三方
    	- 七牛云 ====》空间存储
        - 阿里云 ====》桶存储
        -其他
    3 自己搭建
    	-ceph(重),minio,fastdfs\
        FastDFS:https://zhuanlan.zhihu.com/p/372286804
        
#使用七牛云投管
	'''
	上传文件流程
			-前段选择视频----》上传到后端-----》后端把视频上传到七牛云---》返回地址---》后端存储到数据库
			
			-前段使用js---->上传到七牛云——————》七牛云返回地址-----》前段向后端发送ajax请求,把视频地址发送到后端----》后端存储到数据库
	
	'''

Python使用七牛云

from qiniu import Auth, put_file

q = Auth('', '')
#要上传的空间
bucket_name = "文件名"
#上传后保存的文件名
key = "文件名"
#生成上传 Token,可以指定过期时间等
token = q.upload_token(bucket_name, key, 3600)
#要上传文件的本地路径
localfile = './1.mp4'
ret, info = put_file(token, key, localfile, version='v2')
#ret, info = put_data(token, key, files)直接上传内容
print(info)
print(ret)
print('域名'+key)




生成时间戳防盗链

from qiniu.services.cdn.manager import create_timestamp_anti_leech_url
import time

host = 'http://a.example.com'

# 配置时间戳时指定的key
encrypt_key = ''

# 资源路径
file_name = 'a/b/c/example.jpeg'

# 查询字符串,不需要加?
query_string = ''

# 截止日期的时间戳,秒为单位,3600为当前时间一小时之后过期
deadline = int(time.time())+3600


timestamp_url = create_timestamp_anti_leech_url(host, file_name, query_string, encrypt_key, deadline)

print(timestamp_url)

vue使用七牛云

安装

npm install qiniu-js

导入

const qiniu = require('qiniu-js')
// or
import * as qiniu from 'qiniu-js'

使用

#qiniu.upload 返回一个 observable 对象用来控制上传行为,observable 对像通过 subscribe 方法可以被 observer 所订阅,订阅同时会开始触发上传,同时返回一个 subscription 对象,该对象有一个 unsubscribe 方法取消订阅,同时终止上传行为



文件上传
const observable = qiniu.upload(file, key, token, putExtra, config)
const subscription = observable.subscribe(observer) // 上传开始
// or
const subscription = observable.subscribe(next, error, complete) // 这样传参形式也可以
subscription.unsubscribe() // 上传取消

图片上传前压缩

const options = {
  quality: 0.92,
  noCompressIfLarger: true
  // maxWidth: 1000,
  // maxHeight: 618
}
qiniu.compressImage(file, options).then(data => {
  const observable = qiniu.upload(data.dist, key, token, putExtra, config)
  const subscription = observable.subscribe(observer) // 上传开始
})

其他详见--》https://developer.qiniu.com/kodo/1283/javascript

posted @ 2023-07-04 15:04  哈哈哈哼  阅读(50)  评论(0编辑  收藏  举报