google-translate - 如何使用客户端库将格式传递给谷歌云翻译 API?
问题描述
我们在我们的快速应用程序中使用谷歌云翻译API。我正在尝试使用客户端库进行翻译,而不是每次都发出 API 请求。1.我想知道的是如何在使用客户端库时将格式(文本或html)等选项传递给api?我可以通过使用requestjs
这样的 http 请求来实现这一点:
var request = require('request');
var url = 'https://translation.googleapis.com/language/translate/v2';
var options1 = {
q: 'amore mio',
target: 'hi',
format: 'text',
source: 'it',
key: 'my API key'
}
request.post({url:url, qs:options1}, (err, res, body)=> {
if(err) {
console.log('ERR: ', err);
}
console.log('RES: ', res.statusCode);
console.log('Body: ', body);
})
但是使用客户端库的示例仅显示了这一点:
const {Translate} = require('@google-cloud/translate');
// Your Google Cloud Platform project ID
const projectId = 'YOUR_PROJECT_ID';
// Instantiates a client
const translate = new Translate({
projectId: projectId,
});
// The text to translate
const text = 'Hello, world!';
// The target language
const target = 'ru';
// Translates some text into Russian
translate
.translate(text, target)
.then(results => {
const translation = results[0];
console.log(`Text: ${text}`);
console.log(`Translation: ${translation}`);
})
.catch(err => {
console.error('ERROR:', err);
});
有没有办法可以使用客户端库传递诸如“格式”之类的选项?
如何在第一种方法中将字符串数组传递给选项对象的 q 属性(查询字符串)?如果我直接传递一个数组,例如:
q: ['amore mio', 'grazie']
我收到一条错误消息:
RES: 400
Body: {
"error": {
"code": 400,
"message": "Required Text",
"errors": [
{
"message": "Required Text",
"domain": "global",
"reason": "required"
}
]
}
}
解决方案
推荐阅读
- tinymce-4 - 如何设置“mathtype”插件适合手机屏幕
- nlp - 在多标签分类上微调 BERT 模型需要多少标记数据?
- autosys - Autosys - 复杂场景
- reactjs - 非 hubspot 表单弹出窗口未创建联系人
- html - 无法更改当前光标
- bash - 为什么 Gitlab CI 在本地而不是在远程机器上运行命令?
- mysql - 具有相同名称的多个 MySQL 键的含义
- java - 对象中的Java逗号分隔值需要将其添加为列表中的两条记录
- javascript - JsPDF 生成一个空白 PDF
- spring - Spring OpenFeign 在添加 pkcs12 证书后执行错误的 RequestParam 编码