私はgoogle translate apiを使用したいので、このnode.jsモジュールを作成しました。node.jsリクエストエンコーディング(google translate)
module.exports = function(sourceText,sourceLang,targetLang,callback) {
var qst = qs.stringify({
client : 'gtx',
sl : sourceLang,
tl : targetLang,
dt : 't',
q : sourceText
});
var options = {
uri: 'http://translate.googleapis.com/translate_a/single?'+qst,
};
request.get(options).on('response',function(response){
response.on('data',function(data){
console.log(data.toString('utf-8'));
});
});..
私は主に日本語を韓国語に翻訳したいので、テストしましたが、私が望む結果が得られません。 URIをチェックしてブラウザで実行すると、うまくいきました!たとえばについては
:sorceLang = JA、targetLang = KO、sourceText =ののの、 私はブラウザにURI
http://translate.googleapis.com/translate_a/single?client=gtx&sl=ja&tl=ko&dt=t&q=%E3%81%AE%E3%81%AE%E3%81%AE
結果を得た:[[["의의","ののの",,,0]],,"ja"]
しかし、 node.js戻り値:[[["縺ョ縺ョ縺ョ","縺ョ縺ョ縺ョ",,,0]],,"ja"]
結果が翻訳されていないので、リクエストに問題があるようです。
私に解決策を教えてください。ありがとうございました。
あなたは 'request.get(options、function(err、res、body){console.log(body)})'を試しましたか? – mscdex
はい、試しました。しかし結果は同じです。こんにちは体:SaaSは "、"それは "、,,]]、@mscdex – yongsup