admin管理员组文章数量:1566678
// 百度翻译Api 中文翻译成英文 是一个辅助功能插件
import Md5 from './md5.min';
const info = {
apiServer: window.location.protocol === 'http:' ? 'http://api.fanyi.baidu/api/trans/vip/translate' :
'https://fanyi-api.baidu/api/trans/vip/translate',
from: 'zh',
to: 'en',
appid: '你的百度翻译AppId',
};
window.jsonpCallback = function(response){
if(response && response.trans_result && response.trans_result.length){
let res = response.trans_result[0].dst;
if(res){
window.jsonpCallbackRes = res;
}else{
window.jsonpCallbackRes = '';
}
}
};
function ajax(url, reslove){ // jsonp 请求 百度翻译接口
let jsonp = document.createElement('script');
jsonp.type = 'text/javascript';
jsonp.src = url+'&callback=jsonpCallback';
document.getElementsByTagName('head')[0].appendChild(jsonp);
jsonp.onload = (e) => {
reslove(true);
}
}
export default function translate(q = ''){
const { from, to, appid, apiServer } = info;
const salt = Date.parse(new Date()) / 1000;
let params = {
q,
from,
to,
appid,
salt,
sign: Md5(appid + q + salt + '你的百度翻译Api密匙'),
};
let url = apiServer + `?q=${q}&from=${from}&to=${to}&appid=${appid}&salt=${salt}&sign=${params.sign}`;
return new Promise((reslove,reject)=> {
return ajax(url, reslove);
}).then((res) => {
return window.jsonpCallbackRes; // 返回翻译后的信息
});
}
使用方法
translate('中国').then((res) => {
console.log(res); // China
})
md5加密
https://github/blueimp/JavaScript-MD5/blob/master/js/md5.min.js 下载下来然后 import 到项目中
Md5('xxxx');
相关文档
https://api.fanyi.baidu/product/113 百度翻译Api
本文标签: 范例例子JavaScriptAPIDemo
版权声明:本文标题:javaScript 调用百度翻译Api Demo 使用例子 范例 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1725599945a1032346.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论