赞
踩
一.有道翻译
1)获取应用ID
和 应用密钥
https://ai.youdao.com/doc.s#guide
2)遵循接口参数接入
3)代码如下:
import $ from "jquery";
const CryptoJS = require("crypto-js"); // 引用AES源码js
- var appKey = "您的appKey";
- var key = "您的appSecret"; //注意:暴露appSecret,有被盗用造成损失的风险
- var salt = new Date().getTime();
- var curtime = Math.round(new Date().getTime() / 1000);
- var query = this.form.content;
- // 多个query可以用\n连接 如 query='apple\norange\nbanana\npear'
- var from = "zh-CHS";
- var to = "en";
- var str1 = appKey + this.truncate(query) + salt + curtime + key;
- var sign = CryptoJS.SHA256(str1).toString(CryptoJS.enc.Hex);
- //判断是中译英还是英译中
- if (/[\u4E00-\u9FA5]/g.test(this.form.content)) {
- from = "zh-CHS";
- to = "en";
- } else {
- from = "en";
- to = "zh-CHS";
- }
- let contdata = this.form.content
-
- let params = {
- q: contdata,
- appKey: appKey,
- salt: salt,
- from: from,
- to: to,
- sign: sign,
- signType: "v3",
- curtime: curtime
- };
- let that = this;
-
- $.ajax({
- url: "http://openapi.youdao.com/api",
- type: "post",
- dataType: "jsonp",
- data: params,
- success: function(data) {
- console.log(data)
- that.$set(that.form, "translate", data.translation[0]);
- },
- error: function(error) {
- console.log(error);
- }
- });
- truncate(q) {
- var len = q.length;
- if (len <= 20) return q;
- return q.substring(0, 10) + len + q.substring(len - 10, len);
- }
参数较多,且需要计算,较繁琐;并且翻译文本不宜过长。
二.彩云小译
1)登陆彩云科技开放平台获取token(需要审核,较快,10分钟左右)
https://dashboard.caiyunapp.com/user/sign_in/
2)代码如下:
- let isType = "zh2en";
- let that = this;
- //判断是中译英还是英译中
- if (/[\u4E00-\u9FA5]/g.test(this.form.content)) {
- isType = "zh2en";
- } else {
- isType = "en2zh";
- }
- let payload = {
- source: this.form.content,
- detect: "true",
- trans_type: isType,
- request_id: "demo"
- };
- $.ajax({
- url: "http://api.interpreter.caiyunai.com/v1/translator",
- type: "post",
- data: JSON.stringify(payload),
- headers: {
- "content-type": "application/json",
- "x-authorization": "token " + "您申请的token"
- },
- success: function(data) {
- that.transLoading = false;
- that.$set(that.form, "translate", data.target);
- },
- error: function(error) {
- that.transLoading = false;
- that.$message.error('翻译失败');
- console.log(error);
- }
- });
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。