//在线翻译查询(百度翻译) $('#selectBtn').click(function() { var appid = '你申请的appid'; var key = '你申请的key'; var salt = (new Date).getTime();//取当前时间作为随机数 var query= $('#transInput').val();//取输入框的val var q = encodeURIComponent(query);//编码UTF-8 var from = $('#languageLeft').attr('data-language');//原文 var to = $('#languageRight').attr('data-language');//译文 var str1 = appid + query + salt +key;//秘钥 var sign = MD5(str1);//md5加密 $.ajax({ url: 'http://api.fanyi.baidu.com/api/trans/vip/translate', type: 'get', dataType: 'jsonp', data: { q: query, appid: appid, salt: salt, from: 'auto', to: 'auto', sign: sign }, success: function (data) { console.log(data); var result = data.trans_result; $('#transDisplay').empty(); for(var i in result){ var html = '<p>'+decodeURIComponent(result[i].dst)+'</p>'; $('#transDisplay').append(html); } } }); });
官网给了测试的appid和key
var appid = '2015063000000001';
var key = '12345678';
还要下载一个md5文件,大家可以到官网去点击demo下载,里面包含了MD5文件。
上面的from和to我是设置的auto,自动识别语言。如果要自己传的话,可以参照上面我设置的变量from、to。我在html标签上设置了data-language属性来储存语言编码。
这里有个问题要注意,你要翻译的文字在ajax传输的时候要encode转码,而生成秘钥的时候这块则是不需要转码的。大家切记。