利用google的translation api 为网站添加翻译功能

钱展
2023-12-01

<script type="text/JavaScript"> </script> <script src="http://a.alimama.cn/inf.js" type="text/javascript"></script>

Google 的 translation api 分为意译和直译两种。使用google的translation api,可以很方便的为网站提供翻译功能。

首先需要看看 开发者指南页面,加载Google的JS代码
 <script type="text/javascript" src="http://www.google.com/jsapi"></script>
 <script type="text/javascript">
   google.load("language", "1");
 </script>

然后利用 api 提供的方法 google.language.translate 即可完成翻译工作。这里有个示例文档,API 的说明请看这里。

使用开发者指南页面的方法可以很方便的获取到数据,但是数据是一次性的,好在Google也提供其他方式返回数据,如JSON。

Google translation api 必须使用GET方式获取数据,返回的数据格式为JSON,结构如下:
 {
   "responseData" : {
     "translatedText" : the-translated-text,
     "detectedSourceLanguage"? : the-source-language
   },
   "responseDetails" : null | string-on-error,
   "responseStatus" : 200 | error-code
 }

项目里用到的地方是用jQuery的getJSON方法获取数据,然后在页面上多次使用,非常灵活。

而期间出现了一个错误,corss domain 跨域名请求数据的问题。表现为:access to restricted uri denied" code: "1012 jquery

你可以看别人的意见,不过我建议你看看 jQuery的getJSON方法,或者往下看。

由于web服务的安全考虑,跨域名请求被禁止,于是一个新的JOSN概念 JSONP 被提出来,用于解决这个问题,值得庆幸的是Google 、Flickr 和其他一些数据提供商都支持了JSONP。

这里有一些文档可以帮助你解决这个问题。

需要注意的是传输的参数需要编码,否则会返回400。

<script type="text/JavaScript"> </script> <script src="http://a.alimama.cn/inf.js" type="text/javascript"></script>

 类似资料: