【通用文本翻译API】微信小程序实战演示,保姆级教程,亲测可用!

一、事前准备

微信开发者工具微信开发者工具下载地址与更新日志 | 微信开放文档 

(无需多言,有需要请自行下载工具和开通微信小程序账号,网上教程多,请自行搜索) 

百度翻译开放平台百度翻译开放平台

 根据流程:登录,注册,认证,开通

 

开通翻译API服务 

 

 由于本人已经申请,所以显示这种情况。

如果还没有开通,自行按要求进行申请开通即可。


 点击这里,查看你的开发者信息(一些信息、申请、认证情况等等)

注意注意!!以下画框的三个内容在开发过程中会非常重要!

 在代码部分会讲解。

二、如何使用

当你看到这一步,就默认你走完上述的流程。以下是代码部分。

(一)页面部分:

//html

<div>
    <div>一个测试百度翻译api的案例</div>
    <div>
        <input style="border: 1px black solid;" type="text" id="query" bind:change="inputQuery" />
        <button bindtap="setTranslateApi">文本翻译</button>
    </div>
    <div wx:if="transResult">翻译结果:{
  
  {transResult}}</div>
</div>

(二)JS部分:

引入第三方库(需要下载,下文有教程)
import md5 from 'js-md5';
 案例用到的数据
  data: {
    query: '', //存储输入的文本内容
    transResult:'',  //存储翻译生成的结果
  },
获取并存储文本框的输入内容
  inputQuery: function (e) {
    this.setData({
      query: e.detail
    });
  },
 生成数字随机码
generateRandomString: function (length) {
    var result = '';
    var characters = '0123456789';
    var charactersLength = characters.length;
    for (var i = 0; i < length; i++) {
      result += characters.charAt(Math.floor(Math.random() * charactersLength));
    }
    return result;
  },
 发送翻译请求
setTranslateApi: function () {
    var that=this;
    let query = this.data.query.value;
    if (query) {
      console.log("预翻译文本是", query);
    } else {
      console.log("输入内容不能为空");
    }
    let appid = "xxxx";  //替换成你自己的百度appid
    let secertKey='xxx'; //替换成你自己的百度密钥
    var salt = this.generateRandomString(10);  //生成随机数字字符串,传的参数表示生成多少位
    console.log('生成的10位随机码,',salt);
    let sign=md5(appid+query+salt+secertKey);
    console.log("生成的sign签名是,",sign);
    wx.request({
      url: "https://fanyi-api.baidu.com/api/trans/vip/translate",
      data: {
        q: query,
        from: 'zh',
        to: 'en',
        appid: appid,
        salt: salt,
        sign: sign
      },
      success(res) {
        var result = res;
        console.log("得到的翻译结果",res.data, res.data.trans_result);
          that.setData({
              transResult:res.data.trans_result[0].dst
        })
      },
      fail() {
        uni.showModal({
          title: "错误!",
          content: "网络错误!",
          complete() {
            this.translate_source = ""
          }
        })
      }
    })
  },
JS-安装第三方库js-md5,用于生成必要的md5。

打开项目,右键点击空白处

在打开的终端输入指令:

npm install js-md5 --save

注意:接下来这一步非常重要! 构建npm 

 想要你安装的库可以正常使用,都需要进行“构建npm”

微信开发者工具-工具-构建npm-重新编译项目

(三)可能出现的错误(这部分非常重要,只演示个人测试时出现的错误)

发送成功,但返回不正确的结果,状态码是58000(INVALID_CLIENT_IP),此时需要你做两步。

第一步:将客户端的服务器IP添加到翻译开发者平台

(在开发者工具,console.log打印请求后得到的信息,重点关注“INVALID_CLIENT_IP”字眼)

  第一个是我一开始填写的,但实际上,我发送请求时用的不是第一个服务器IP。

(因为我连的是公司的网络,所以我就添加公司网络服务器IP,也就是下图的第二个)

 把你实际运行发送请求的服务器IP,添加进去。

第二步:在微信小程序平台上添加服务器域名

 在此添加域名,然后点击保存即可。

https://fanyi-api.baidu.com

三、效果展示


整理不易,如果你喜欢这篇文章,请点赞、收藏、关注~

后续有时间,考虑整理代码上传到仓库,关注我,获取最新消息。11-19

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十八朵郁金香

感恩前行路上有你相伴

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值