收藏
回答

ocr功能识别驾驶证需要的图片是https的,但是用wx.chooseImg返回的是http的图片?

直接看代码

wx.chooseImage({
          count: 1,
          sizeType: ['compressed'],
          sourceType: ['album', 'camera'],
          success(res) {
            // tempFilePath可以作为img标签的src属性显示图片
            const tempFiles = res.tempFiles
            console.log(tempFiles[0])
            wx.serviceMarket.invokeService({
                  service: 'wx79ac3de8be320b71', // '固定为服务商OCR的appid,非小程序appid',
                  api: 'OcrAllInOne',
                  data: {
                    img_url: tempFiles[0].path,
                    data_type: 3,
                    ocr_type: 4,
                  },
                }).then(res => {
                  console.log('invokeService success', res)


                }).catch(err => {
                  console.error('invokeService fail', err)


                })


或者这种方式

wx.request({
              url: store.state.url + '/wxshop/horesman/getHoresmanToken',
              method: 'POST',
              data: {
              },
              success(res) {
                console.log(res)
                wx.request({
                  url: "https://api.weixin.qq.com/cv/ocr/drivinglicense?img_url="+tempFilePaths[0]+"&access_token="+res.data.data,
                  method: 'POST',
                  data: {
                  },
                  success(res) {
                    console.log(res)
                  },
                  fail(error) {
                    console.log(error);
                  }
                  })
              },
              fail(error) {
                console.log(error);
              }
            })


我们通过选择本地或者拍摄的图片返回的地址为http地址,我查到的资料显示为ocr功能需要https路径图片,并且路径中不能有端口号,我自己配的图片服务器是带端口号的,会报错,

我在网上找到的图片可以使用,复制网上的图片地址链接可以使用。

可以试一下我服务器的图片,地址是https://www.vaiq.cn:8181/dhn/icon/drive/drive.jpg

图片是网图,就没有打码了

这是报错,如果真机调试,报的是另一个错,那个错就不贴了。

回答关注问题邀请回答
收藏

3 个回答

登录 后发表内容
问题标签