zoukankan      html  css  js  c++  java
  • 微信小程序图像增强img.superresolution接口

    整体流程:

    • 获得access_token
    • 调用img.superresolution得到media_id
    • 根据media_id下载图片

    注:虽然以下的几个接口都是服务端API,但是我都是在客户端调用的,实测可行。

    一、获取accecc_token

    参考 auth.getAccessToken

    请求地址:

    GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

    示例代码:

        var that = this
        let APPID = "xxx"
        let APPSECRET = "xxx"
        wx.request({
          url: `https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=${APPID}&secret=${APPSECRET}`,
          method: 'GET',
          success: (res) =>{
            console.log(res)
            console.log(res.data.access_token)
            that.setData({
              access_token: res.data.access_token
            })
          },
          fail: (res) =>{
            console.log(res)
          },
        })

    二、调用图像清晰化接口

    参考 img.supperresolution

    请求地址:

    POST https://api.weixin.qq.com/cv/img/superresolution?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN

    示例代码:

          wx.request({
            url: "https://api.weixin.qq.com/cv/img/superresolution",
            data: {
              img_url: "https://gss3.bdstatic.com/-Po3dSag_xI4khGkpoWK1HF6hhy/baike/c0%3Dbaike116%2C5%2C5%2C116%2C38/sign=8816325c4036acaf4ded9eae1db0e675/fcfaaf51f3deb48fcfadd0bbfb1f3a292cf5788a.jpg",
              access_token: that.data.access_token,
            },
            method: 'POST',
            dataType: "json",
            header: {
              'content-type': 'application/x-www-form-urlencoded'
            },
            success: (res) => {
              console.log(res)
              that.setData({
                media_id: res.data.media_id
              })
            },
            fail: (res) => {
              console.log(res)
            },
          })

    三、下载图片

    返回的media_id有效期为3天,期间可以通过“获取临时素材”接口获取图片二进制,示例:

    curl "https://api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID" -o "output.jpg"

    示例代码:

        setTimeout(function () {
          var downloadUrl = `https://api.weixin.qq.com/cgi-bin/media/get?access_token=${that.data.access_token}&media_id=${that.data.media_id}`
          console.log(downloadUrl)
          that.setData({
            downloadUrl: downloadUrl
          })
        }, 2000)

    如果要从输入框获取图片URL,textarea标签挺不错的

    <view class="section">
      <view>图片URL: </view>
      <textarea maxlength="1000" bindblur="bindTextAreaBlur" auto-height placeholder="请输入图片链接" />
    </view>
      bindTextAreaBlur: function (e) {
        console.log(e.detail.value)
        this.setData({
          imgUrl: e.detail.value
        })
      },
  • 相关阅读:
    translations.dart阅读
    # objc-weak 阅读
    Objective-C Runtime2.0(-)
    iOS图文混排
    BestCoder Round #85 抽屉原理/贪心/质因数
    hdu 5763 Another Meaning KMP+DP(多校)
    hdu 5775 Bubble Sort 树状数组(多校)
    BestCoder Round #84
    hdu 5724 SG函数+状压(多校)
    hdu 5723 最小生成树+dfs (多校)
  • 原文地址:https://www.cnblogs.com/lfri/p/12054117.html
Copyright © 2011-2022 走看看