最近在找一个翻译的api;搜索到这个ms的api;
折腾了一下,在此记录一下使用方法;因为网上很多例子是旧版本(v1的),根本不适用;
现在这里说的是新版本v2的,后面的版本通不通用,暂时无法得知;
1 注册一个账户,如果已经有ms的账户在这里登记一下即可:https://datamarket.azure.com/account;登录成功后,回到这个页面;
点击下面的编辑,变成如下样子:
切记,country不要选择中国,否则这个api将提示,你的市场无法提供,也就是之前是选择了中国的,不能使用,那么,来这里修改一下成其它国家就可以使用了;
,但是下面的语言的选项,无所谓;
2 开通这个api,点击账户上的data,或是在上面输入Translator 搜索也行;
3 点击translator的链接,完成订阅.再回到这个列表就可以看到你是订阅状态了,下面就会出现"use"按钮,可以直接点击它试用一下,它会给有这个api所有支持的功能的demo;
试用界面
4 创建一个app
进入app管理
点击注册app,上图中对于后面的使用来说,只有那二项是需要的;
5. 外部的试用api,把下面的代码保存成xxx.htm;
<form method="POST" action="https://datamarket.accesscontrol.windows.net/v2/OAuth2-13" enctype="application/x-www-form-urlencoded" target="kkk">
<input name="grant_type" value="client_credentials" />
<input name="client_id" value="chrome-translates-plugin" />
<input name="client_secret" value="WmxiM=" />
<input name="scope" value="http://api.microsofttranslator.com" />
<input type="submit" />
</form>
text <input id="text" value="text" />
accessToken <input id="at" value="" />
<input id="get" type="button" value="get" />
<iframe id="kkk" name="kkk" src="about:blank" width="100%" height="400"></iframe>
<script type="text/javascript">
document.getElementById('get').onclick = function ()
{
var to = "zh-CHS", text = document.getElementById('text').value;
var s = document.createElement("script");
s.src = "http://api.microsofttranslator.com/V2/Ajax.svc/Translate" +
"?appId=Bearer " + encodeURIComponent(document.getElementById('at').value) +
"&to=" + encodeURIComponent(to) +
"&text=" + encodeURIComponent(text) +
"&oncomplete=mycallback";
document.body.appendChild(s);
}
function mycallback(response)
{
console.log(response);
}
</script>
从这上面来看,我没有找到我想要的功能:
1 没有单词音标;
2 没有单词的声音;
3 没有相关的释义,比如名词,动词复数
所以,用来做翻译还可以,但是查单词就显得功能太少;