vue实现中英文切换功能

1、首先在百度翻译的开放平台中,获取属于自己的APPid,没有注册先注册

2、得到了这些基本信息后,需引入md5插件npm install --save js-md5

3、请求接口及对应参数

通用翻译API HTTP地址:

http://api.fanyi.baidu.com/api/trans/vip/translate

通用翻译API HTTPS地址:

https://fanyi-api.baidu.com/api/trans/vip/translate

4、核心代码(注意:axios此处设置了代理,请查看本文评论区 )

<template>
  <div class="app box">
    <el-input type="text" v-model="zhStr" style="width:300px;margin-right:10px" />
    <el-button type="primary" @click="toEn">翻译</el-button>
    <p>{{enStr}}</p>
  </div>
</template>
<script>
import md5 from 'js-md5';
import axios from 'axios';
export default {   
  data(){
    return {
      zhStr: '',
      enStr: '',
      appid: '你的appid',
      userkey: '你的密钥',
      salt:parseInt(Math.random() * 1000000000),//随机数
    }
  },
  methods: {
    async toEn(){
      const str = `${this.appid}${this.zhStr}${this.salt}${this.userkey}`;
      const sign = md5(str);/* md5加密,生成签名 */
      const params = {
        q: this.zhStr,
        from: 'zh',
        to: 'en',
        appid: this.appid,
        sign,
        salt: this.salt
      }
      const res = await axios.get('/baidu/api/trans/vip/translate', {
        params
      });//此处设置了代理,请查看本文评论区
      console.log(res);
    }
  }
}
</script>

5、返回结果

注意:如果出现404的情况,请一定核实一下自己的密钥跟appid,我测试了是没有问题的,能够正常的翻译出来,还有就是代理的设置,以及MD5插件是否有下载,可以拿我案例代码测试通过了之后,再根据自己业务逻辑修改!!!

 

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Agwenbi

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值