i18-fe-automator
Version:
前端代码提取中文并替换成$t函数
43 lines (42 loc) • 1.31 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.youdaoTranslate = void 0;
const md5_1 = __importDefault(require("md5"));
const qs_1 = __importDefault(require("qs"));
const got = require('got');
async function youdaoTranslate(word, originLang, targetLang, option) {
const key = option.key;
const secret = option.secret;
const salt = Math.random();
const sign = (0, md5_1.default)(key + word + salt + secret);
const baseUrl = 'https://openapi.youdao.com/api';
const params = {
from: originLang,
to: targetLang,
appKey: key,
salt,
sign,
q: word,
};
const url = `${baseUrl}?${qs_1.default.stringify(params)}`;
return new Promise((resolve, reject) => {
got
.get(url)
.then(({ body }) => {
const res = JSON.parse(body);
if (res.errorCode === '0') {
resolve(res.translation[0]);
}
else {
reject(body);
}
})
.catch((e) => {
reject(e);
});
});
}
exports.youdaoTranslate = youdaoTranslate;