有道API ,注册用户信息并拿到有道翻译的应用ID和应用密钥
安装 crypto-js
npm install crypto-js
调用翻译API
import CryptoJS from 'crypto-js';
export const yandex = (query: any) => {
let appKey = '';//应用ID
var salt = new Date().getTime();
var curtime = Math.round(new Date().getTime() / 1000);
let key = '';//应用秘钥
var str1 = appKey + truncate(query) + salt + curtime + key;
var sign = CryptoJS.SHA256(str1).toString(CryptoJS.enc.Hex);
let val = {
q: query,
appKey,
salt: salt,
from: 'zh-CHS',
to: 'en',
sign: sign,
signType: 'v3',
curtime: curtime,
vocabId: ''//术语表out_id
};
return request({
baseURL:'/youdao.com',
url: '/api',
method: 'get',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Access-Control-Allow-Origin': '*'
},
params:val
// data: JSON.stringify(val)
});
};
const truncate = (q: string) => {
var len = q.length;
if (len <= 20) return q;
return q.substring(0, 10) + len + q.substring(len - 10, len);
};
跨域设置 vite.config.ts
server: {
host: '0.0.0.0',
port: Number(env.VITE_APP_PORT),
open: true,
proxy: {
'/youdao.com': {
target: 'https://openapi.youdao.com', //接口的前缀
ws: true, //代理websocked
changeOrigin: true, //虚拟的站点需要更管origin
rewrite: (path) => {
return path.replace(new RegExp('^' + '/youdao.com'), '');
}
}
}
},