日本語のドキュメントを見つけたぜ、と思ったのだが、罠にかかった。
qiita.com
コメントにも書いたが、この方法は2017年1月1日以降は有効ではない。コメント欄でも紹介されていたが、
Getting Started with Microsoft Translator
に書かれているとおりに進めば良いだろう。
トークンを取得するのに使うのは次の画像のKEY 1
というものだ。とにかく、この画面が見れたら勝利は目前だ。ちなみに、KEY 2
をつかってもトークンは取得できる。
トークンを取得する方法はここに書いている。
github.com
翻訳をするためのコアのコードは他の読み物が沢山あるためここでは詳細に書かない。だが、自分のメモのために一応コードを書いておく。追加すべきusing
や参照は何も書いていないので注意が必要である。
private string TranslateMethod(string authToken, string translating)
{
string translated = string.Empty;
string from = "ja";
string to = "en";
string uri = "http://api.microsofttranslator.com/v2/Http.svc/Translate?text=" +
System.Web.HttpUtility.UrlEncode(translating) + "&from=" + from + "&to=" + to;
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(uri);
httpWebRequest.Headers.Add("Authorization", authToken);
WebResponse response = null;
try
{
response = httpWebRequest.GetResponse();
using (Stream stream = response.GetResponseStream())
{
DataContractSerializer dcs = new DataContractSerializer(Type.GetType("System.String"));
translated = (string)dcs.ReadObject(stream);
}
}
finally
{
if (response != null)
{
response.Close();
response = null;
}
}
return translated;
}
以上だ。