javascript - microsoft transaltor 的对话框流错误
问题描述
我试图调用下面的函数是对话流,但我无法响应正文
function calltransliterate(agent) {
console.log('calltransliterate');
return new Promise((resolve, reject) => {
const trnstext= agent.parameters.trnsvar;
var trnsaltedtext =null;
var key_var = '**API_KEY**';
var subscriptionKey = key_var;
var endpoint_var = 'https://api.cognitive.microsofttranslator.com/';
var endpoint = endpoint_var;
let options = {
method: 'POST',
baseUrl: endpoint,
url: 'transliterate',
qs: {
'api-version': '3.0',
'language': 'ja',
'fromScript': 'jpan',
'toScript': 'latn'
},
headers: {
'Ocp-Apim-Subscription-Key': subscriptionKey,
'Content-type': 'application/json',
'X-ClientTraceId': uuidv4().toString()
},
body: [{
'text': trnstext
}],
json: true,
};
console.log('before request');
requestModule.get(options, (error, response, body) =>{
console.log('after request');
console.log( (body)); //error occures here
});
});
}
但是 console.log((body)); 消息:“请求的资源不支持请求方法。”
解决方案
尽管您设置options.method
为“POST”,但您随后会调用requestModule.get()
,这会将方法更改为“GET”。
尝试更多类似的东西
requestModule.post( options, (error, response, body) => {
//...
});
推荐阅读
- spring-mvc - java.lang.OutOfMemoryError Java 堆空间 MyEclipse JBoss
- database - 如何检查 SAS 上的 2 列是否相同?
- c++ - 我想打印蝴蝶图案的上半部分。我的代码有什么问题?
- tensorflow - 如何为 Keras 有状态 LSTM 层设置输入?
- javascript - 模型中的反对变量列数
- rust - 为什么 Rust 只使用 16 位有效数字进行 f64 相等检查?
- python - 熊猫数据框有效地获取列并附加为新行
- android - 检查您是否可以打开外部应用程序并使用 React Native 打开它
- swift - UserDefaults 总是返回 nil
- python - 在 Python C API 中使用所有 CPU 内核