收藏
回答

小程序里面如何使用腾讯云的通用文字识别功能?

小程序里面如何使用腾讯云的通用文字识别功能?

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

2 个回答

  • 修身养性
    修身养性
    星期一 09:04

    你好!这个可以成功实现图片文字识别吗?会不会偶尔报错?

    星期一 09:04
    有用
    回复 1
  • stop eating
    stop eating
    03-04
    wx.chooseImage({
          success: function(res) {
            let filePath = res.tempFilePaths[0];
            const FM = wx.getFileSystemManager();
            FM.readFile({
              filePath: filePath,
              encoding: "base64",
              success: res => {
                let { data } = res;
                wx.cloud.callFunction({
                  name: "ocr",
                  data: {
                    base64: data
                  }
                })
                .then( res => {
                  console.log(res.result);
                })
              }
            })
          },
        })
    
    const cloud = require('wx-server-sdk')
    cloud.init()
    const tencentcloud = require("tencentcloud-sdk-nodejs");
    const OcrClient = tencentcloud.ocr.v20181119.Client;
    const models = tencentcloud.ocr.v20181119.Models;
    const Credential = tencentcloud.common.Credential;
    const ClientProfile = tencentcloud.common.ClientProfile;
    const HttpProfile = tencentcloud.common.HttpProfile;
    let cred = new Credential("", "");
    let httpProfile = new HttpProfile();
    httpProfile.endpoint = "ocr.tencentcloudapi.com";
    let clientProfile = new ClientProfile();
    clientProfile.httpProfile = httpProfile;
    let client = new OcrClient(cred, "ap-shanghai", clientProfile);
    let req = new models.GeneralBasicOCRRequest();
    
    // 云函数入口函数
    exports.main = async(event, context) => {
      const { base64 } = event;
      let params = `{"ImageBase64":"${base64}"}`;
      req.from_json_string(params);
      return new Promise((resolve, reject) => {
        client.GeneralBasicOCR(req, function (errMsg, response) {
          if (errMsg) {
            reject(errMsg);
            return;
          }
          resolve(response.to_json_string())
        });
      });
    }
    
    
    
    
    03-04
    有用
    回复 10
    • 海兰云天
      海兰云天
      03-06
      1.let cred = new Credential("", "") 密钥放在小程序单不安全.
      2. 只用ocr这个借口,但是却人引入sdk, 导致小程序包很大.
      03-06
      回复
    • 海兰云天
      海兰云天
      03-06
      我是说的不用sdk,用http的形式,而且,使用临时token和临时密钥.
      但是有问题,已反馈官方
      03-06
      回复
    • stop eating
      stop eating
      03-06回复海兰云天
      云函数不占用包体积,用http触发云函数不就行了
      03-06
      回复
    • 海兰云天
      海兰云天
      03-06
      需求是,直接在小程序端发起请求,不要上传到云存储.增加步骤
      03-06
      回复
    • stop eating
      stop eating
      03-06回复海兰云天
      直接用云函数发起请求不就行了,增加啥步骤?好会找理由下台啊
      03-06
      回复
    查看更多(5)
登录 后发表内容
问题标签