添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
面冷心慈的大海  ·  领侨动态·  5 月前    · 
无聊的甜瓜  ·  Python运行错误TypeError: ...·  1 年前    · 
胆小的马克杯  ·  How to Install ...·  1 年前    · 
  • 数据处理机制
    1. 数据处理机制介绍
    2. 同步处理
    3. 持久化处理(pfop)
      1. 持久化处理快速入门
      2. 状态查询
    4. 管道
    5. 处理结果另存(saveas)
  • 音视频处理
    1. 音视频处理介绍
    2. 普通音视频转码(avthumb)
    3. 锐智转码(avsmart)
    4. 倍速转码(avfast)
    5. 多码率自适应转码(adapt)
    6. 视频单帧缩略图(vframe)
    7. 视频采样缩略图(vsample)
    8. 视频雪碧截图
    9. 音视频拼接(avconcat)
    10. 音视频分段(segment)
    11. 音视频切片(HLS)
    12. 私有M3U8(pm3u8)
    13. 音视频元信息(avinfo)
    14. 视频水印(avwatermark)
  • 图片处理
    1. 图片处理介绍
    2. 图片处理操作方式
    3. 图片瘦身(imageslim)
    4. 图片基本处理(imageView2)
    5. 图片高级处理(imageMogr2)
      1. 缩放
      2. 裁剪
      3. 格式转换
      4. 渐进显示
      5. 背景色填充
      6. 质量变换
      7. 旋转
      8. 高斯模糊
      9. 锐化
      10. 去除元信息
      11. 图像DPI
    6. 图片高级压缩
      1. AVIF 压缩
      2. HEIF 压缩
    7. 图片水印处理(watermark)
    8. 盲水印处理(watermark)
    9. 图片基本信息(imageInfo)
    10. 图片EXIF信息(exif)
    11. 图片圆角处理(roundPic)
    12. 图片平均色调(imageAve)
    13. 动图合成(animate)
    14. 图片全景拼接(stitch)
    15. 异常图片检测
    16. 图片样式
  • 画质增强
    1. 视频超分
    2. 图像超分
  • 文件处理
    1. 文件HASH值(qhash)
    2. 文本文件合并(concat)
    3. 多文件压缩(mkzip)
    4. MD转HTML(md2html)
    5. 资源下载二维码(qrcode)
  • 内容安全
    1. 图片内容审核
    2. 视频内容审核
  • 人脸核验
    1. SDK解决方案
      1. 人脸核验方案
    2. 功能接口
      1. 权威人脸比对
      2. 人脸比对
      3. 人脸检测
      4. 动作活体检测
      5. 防翻拍活体检测
      6. 身份证识别 OCR
      7. 身份证二要素
      8. 手机号三要素核验
      9. 银行卡四要素核验
      10. 手机号三要素核验旗舰版
      11. 主播黑名单核验
    3. 定价
  • 票证自动识别(OCR)
    1. 驾驶证 OCR
    2. 行驶证 OCR
    3. 增值税发票 OCR
    4. 营业执照 OCR
  • 智能语音
    1. 短语音听写
    2. 实时语音识别
    3. 长语音识别
    4. 语音合成
    5. 智能音频流审核
  • 文档处理
    1. 翻译狗文档翻译
    2. 文档转换
  • 智能风控
    1. 先享后付
  • Open API
    1. Open API 介绍
    2. 翻译狗文档翻译
    3. 数美图片审核
    4. 数美音频文件审核
    5. 数美视频流审核
    6. 依图直播语音审核
  • 我们提供名为 saveas 的数据处理接口,将处理结果作为资源保存到指定空间内,并赋以指定 Key。保存成功后,下一次可直接通过指定 Key 来访问该资源,以达到提升下载速度的效果。

  • 源Bucket和目标Bucket必须在同一区域,即 处理结果不能跨区域另存 ,例如华东Bucket内的文件经处理后结果无法另存到华北的Bucket。
  • 支持 同步调用 持久化(pfop)调用 ,两者调用方式有轻微的差异。大多数使用场景下,建议使用 持久化处理 来实现处理结果存储,避免使用同步操作的 saveas 接口,提升访问速度。
  • urlsafe_base64_encode() 函数按照标准的RFC 4648实现,开发者可以参考github.com/qiniu上各 SDK 的样例代码。
  • 当持久化保存的 fop 耗时较长的时候,saveas 请求会返回 CDN 超时,但是只要保证发送的 saveas 请求合法,七牛服务器还是会对请求做正确处理。
  • 此处签名内容不包含 Scheme 部分,与 DownloadToken 签名不一样。
  • c# http 库发送请求的时候会把 | 转成 %7c,由于签名签的是 | ,导致报 400 错误。可以在发送请求的时候,把 url 中的 | 改为 %7c,或者签名的时候签 %7c。
  • 持久化调用

    saveas/<EncodedEntryURI>/deleteAfterDays/<deleteAfterDays>
    

    fop中设置,直接在命令后跟 |saveas/SafeBase64(bucket:key)/deleteAfterDays/< deleteAfterDays > 即可, 如:

    "persistentOps":"avthumb/mp3/ab/192k|saveas/dGVzdDoxLm1wMw==/deleteAfterDays/3"
    

    表示处理后的数据名称为指定的 key 并且上传到指定的 bucket,在 3 天之后会从 bucket 自动删除。

    同步调用需要签名。

    saveas/<EncodedEntryURI>/sign/<Sign>/deleteAfterDays/<deleteAfterDays>
    

    1.在下载 URL(不含 Scheme 部分,即去除 http : //)后附加 saveas 接口(不含签名部分):

    NewURL = URL + "|saveas/<EncodedEntryURI>"
    

    2.使用 SecretKey 对新的下载 URL 进行HMAC1-SHA1签名:

    Sign = hmac_sha1(SecretKey, NewURL)
    

    3.对签名进行URL安全的Base64编码:

    EncodedSign = urlsafe_base64_encode(Sign)
    

    4.在新的下载 URL 后拼接签名参数:

    FinalURL = NewURL + "/sign/<AccessKey>:<EncodedSign>"
    

    同步调用 saveas 算法示例,生成 saveas 请求的完整 Go 代码如下:

    func makeSaveasUrl(URL, accessKey string, secretKey []byte, saveBucket, saveKey string) string {
          encodedEntryURI := base64.URLEncoding.EncodeToString([]byte(saveBucket+":"+saveKey))
          URL += "|saveas/" + encodedEntryURI
          h := hmac.New(sha1.New, secretKey)
          // 签名内容不包括Scheme,仅含如下部分:
        // <Domain>/<Path>?<Query>
          u, _ := url.Parse(URL)
          io.WriteString(h, u.Host + u.RequestURI())
          d := h.Sum(nil)
          sign := accessKey + ":" + base64.URLEncoding.EncodeToString(d)
          return URL + "/sign/" + sign
    

    EncodedEntryURI 格式

    本格式用于在 URI中指定目标资源空间与目标资源名,格式如下:

    entry = '<Bucket>:<Key>'
    encodedEntryURI = urlsafe_base64_encode(entry)
    

    假设 entryqiniuphotos:gogopher.jpg ,则对应的 encodedEntryURIcWluaXVwaG90b3M6Z29nb3BoZXIuanBn=

    URL安全的Base64编码

    URL安全的Base64编码适用于以URL方式传递Base64编码结果的场景。该编码方式的基本过程是先将内容以Base64格式编码为字符串,然后检查该结果字符串,将字符串中的加号+换成中划线-,并且将斜杠/换成下划线_

    自定义资源名支持变量

    自定义目标资源名时,可以使用变量,支持 预定义变量和自定义变量,变量引用格式为 {{.meta.var}}字符串与{{.meta.var}}的组合 形式求值。

    1.原资源是一个名为 resource/Ship.jpg 的图片:

    http://78re52.com1.z0.glb.clouddn.com/resource/Ship.jpg
    

    2.将图片做缩略处理:

    http://78re52.com1.z0.glb.clouddn.com/resource/Ship.jpg?imageView2/2/w/200/h/200
    

    3.对上述云处理结果进行持久化保存:

    # 另存操作的目标空间与资源名
    entryURI = "qiniu-developer:Ship-thumb-200.jpg"
    #编码结果
    encodedEntryURI = "cWluaXUtZGV2ZWxvcGVyOlNoaXAtdGh1bWItMjAwLmpwZw=="
    #需要签名的部分
    signingStr = "78re52.com1.z0.glb.clouddn.com/resource/Ship.jpg?imageView2/2/w/200/h/200|saveas/cWluaXUtZGV2ZWxvcGVyOlNoaXAtdGh1bWItMjAwLmpwZw=="
    #签名结果
    sign = "bcgojLbLKTsTlhm3XFMYq0cn3lW2G3NAuJYXZDDf:jGo09Pmq5vyG4c-rRb4qF3_dH1g="
    

    4.最终得到的完整下载 URL:

    http://78re52.com1.z0.glb.clouddn.com/resource/Ship.jpg?imageView2/2/w/200/h/200|saveas/cWluaXUtZGV2ZWxvcGVyOlNoaXAtdGh1bWItMjAwLmpwZw==/sign/bcgojLbLKTsTlhm3XFMYq0cn3lW2G3NAuJYXZDDf:jGo09Pmq5vyG4c-rRb4qF3_dH1g=
    

    5.保存转码后资源可通过如下 URL 访问:

    http://78re52.com1.z0.glb.clouddn.com/Ship-thumb-200.jpg