下你所需,载你所想!
汇集开发技术源码资料

七牛云上传模块最新版就2个命令

:193.234KB :1 :2019-12-24 08:34:45

部分简介

.子程序 取上传凭证, 文本型, 公开, 取一个文件的上传凭证,过期时间未到,可继续使用。 注意:为确保客户端、业务服务器和七牛服务器对于授权截止时间的理解保持一致,需要同步校准各自的时钟。频繁返回 401 状态码时请先检查时钟同步性与生成 deadline 值的代码逻辑。
.参数 空间名, 文本型, , 空间名称。
.参数 授权过期时间, 文本型, , 【10位时间戳】该有效期指上传完成后在七牛生成文件的时间,而非上传的开始时间。建议设置为1小时以上
.参数 AccessKey, 文本型
.参数 SecretKey, 文本型
.参数 缓存结果, 逻辑型, 可空, 当token设置的时间未过期继续使用这个缓存的token(token到期自动更新),否则每取一次将覆盖原来的token.此举是为了防止频繁更新,
.局部变量 putPolicy, 文本型
.局部变量 encodedPutPolicy, 文本型
.局部变量 sign, 文本型
.局部变量 encodedSign, 文本型
.局部变量 uploadToken, 文本型
.局部变量 cachefilepath, 文本型
.局部变量 endtime, 文本型
.局部变量 token, 文本型

cachefilepath = 取运行目录 () + “\token.cache.config”
.判断开始 (缓存结果 且 文件是否存在 (cachefilepath))
endtime = 读配置项 (cachefilepath, “cache”, “endtime”, “”)
token = 读配置项 (cachefilepath, “cache”, “token”, “”)
.判断开始 (到长整数 (endtime) > 到长整数 (时间_取现行时间戳 (真)) 且 token ≠ “”)
返回 (token) ' 返回缓存结果
.默认

.判断结束

.默认

.判断结束
putPolicy = 子文本替换 (#上传策略, “[time]”, 授权过期时间, , , 真)
putPolicy = 子文本替换 (putPolicy, “[name]”, 空间名, , , 真)
' putPolicy = 子文本替换 (putPolicy, “[filename]”, 文件名, , , 真)
encodedPutPolicy = 编码_BASE64编码 (到字节集 (putPolicy))
' sign = hex_hmac_sha1 (encodedPutPolicy, SecretKey)
' encodedSign = 编码_BASE64编码 (到字节集 (sign))
encodedSign = Base64_hmac_sha1 (encodedPutPolicy, SecretKey)
encodedSign = 子文本替换 (encodedSign, “/”, “_”, , , 真) ' / 转换 _
encodedSign = 子文本替换 (encodedSign, “+”, “_”, , , 真) ' + 转换 _
encodedSign = 子文本替换 (encodedSign, “-”, “_”, , , 真) ' - 转换 _
uploadToken = AccessKey + “:” + encodedSign + “:” + encodedPutPolicy
写配置项 (cachefilepath, “cache”, “token”, uploadToken)
写配置项 (cachefilepath, “cache”, “endtime”, 授权过期时间)
返回 (uploadToken)

.子程序 上传一个文件, 文本型, 公开, 成功返回文件 hash,key。如果文件存在不会覆盖。
.参数 AccessKey, 文本型
.参数 SecretKey, 文本型
.参数 空间名, 文本型, , 空间名称。
.参数 文件, 文本型, , 被上传的文件,必须是以个完整的路径。
.参数 凭证过期时间, 文本型, , 一个完整的10位时间戳。
.参数 token缓存, 逻辑型, 可空, 是否使用缓存结果
.局部变量 URL, 文本型
.局部变量 XYT, 文本型
.局部变量 四位随机数, 文本型
.局部变量 十五位随机数, 文本型
.局部变量 POST, 字节集
.局部变量 图片, 字节集
.局部变量 FT, 文本型
.局部变量 token, 文本型
.局部变量 left, 文本型
.局部变量 right, 文本型

token = 取上传凭证 (空间名, 凭证过期时间, AccessKey, SecretKey, token缓存)
四位随机数 = 文本_取随机数字 (4)
十五位随机数 = 文本_取随机数字 (15)
XYT = 文本_替换 (#协议头, , , , “4位随机数”, 四位随机数, “15位随机数”, 十五位随机数)
left = 文本_替换 (#包头, , , , “15位随机数”, 十五位随机数, “[filename]”, 文本_取右边 (文件, “\”))
right = 文本_替换 (#包尾, , , , “15位随机数”, 十五位随机数, “[token]”, token)
POST = 到字节集 (left) + 读入文件 (文件) + 到字节集 (right)
FT = 到文本 (网页_访问_对象 (URL, 1, , , , XYT, , , , POST))
返回 (FT)

七牛云上传模块最新版就2个命令

热门推荐

相关文章