Node DialogFlow API集成权限问题:dialogflow.sessions.detectIntent调用失败
DialogFlow Node.js API权限问题:调用detectIntent始终提示权限不足
我最近在做Node.js集成DialogFlow API的开发,跟着官方文档一步步操作,但始终卡在权限这一步——没办法获取调用API所需的权限,导致调用detectIntent接口时失败。我已经试过重新生成服务账号的JSON密钥文件,甚至创建了全新的服务账号,但问题依然存在。
下面是我当前的配置信息和错误情况:
- DialogFlow管理后台的代理服务账号:

- 服务账号的角色配置:

- 「Dialogflow API客户端」角色的权限详情(确认包含
dialogflow.sessions.detectIntent权限):
- 加载服务账号JSON文件后运行Node.js脚本出现的错误:

我使用的是官方教程里的示例脚本,代码如下:
const projectId = 'newagent-9e77e '; //https://dialogflow.com/docs/agents#settings const sessionId = 'quickstart-session-id'; const query = 'bonjour'; const languageCode = 'fr-FR'; // Instantiate a DialogFlow client. const dialogflow = require('dialogflow'); const sessionClient = new dialogflow.SessionsClient(); // Define session path const sessionPath = sessionClient.sessionPath(projectId, sessionId); // The text query request. const request = { session: sessionPath, queryInput: { text: { text: query, languageCode: languageCode, }, }, }; // Send request and log result sessionClient .detectIntent(request) .then(responses => { console.log('Detected intent'); const result = responses[0].queryResult; console.log(` Query: ${result.queryText}`); console.log(` Response: ${result.fulfillmentText}`); if (result.intent) { console.log(` Intent: ${result.intent.displayName}`); } else { console.log(` No intent matched.`); } }) .catch(err => { console.error('ERROR:', err); });
有没有大佬能帮我看看,我是不是漏掉了什么关键的配置步骤?
内容的提问来源于stack exchange,提问作者Doubidou
相关产品推荐
相关产品推荐

