gpt4 book ai didi

node.js - IBM Watson 音调分析器发布请求问题

转载 作者:太空宇宙 更新时间:2023-11-04 00:15:17 24 4
gpt4 key购买 nike

我是学生,学习编码并感谢社区的帮助。我已将我的代码托管在 Heroku 中,域名为 https://depionicapp.herokuapp.com/ 。当我使用 postman 执行发布请求时,我收到错误 500 但使用 cloud 9 我能够得到结果。

var http = require('http');
var bodyParser = require("body-parser")
var vision = require('@google-cloud/vision');
// Authorizing on a per-API-basis. You don't need to do this if you auth on a
// global basis (see Authorization section above).
var express = require('express');
var router = express();

var visionClient = vision({
projectId: 'ionic-face-api',
keyFilename: './ionic.json'
});

router.use(bodyParser.urlencoded({extended: false }));
router.use(bodyParser.json());

router.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
next();
});

var server = http.createServer(router);
router.post('/info', function(req, res) {
var text = req.body.text;
console.log(text)
var ToneAnalyzerV3 = require('watson-developer-cloud/tone-analyzer/v3');

var tone_analyzer = new ToneAnalyzerV3({
username: 'username',
password: 'password',
version_date: '2016-05-19'
});

tone_analyzer.tone({
text: text
}, function(err, tone) {
if (err)
console.log(err);
else
res.send((JSON.stringify(tone, null, 2)));
});
});

postman :

Postman request: https: //depionicapp.herokuapp.com/info
Content - Type: application / json
Body I am sending from postman
{"text": "I am good.....blah blah..." }// Error 500

最佳答案

所以,尽力帮助你。我编辑您的代码,删除视觉模块,然后在 Node.js 中创建一台服务器来测试您的代码,效果完美。

文件toneExample.js:

var http = require('http');
var bodyParser = require("body-parser");
var express = require('express');
var router = express();

router.use(bodyParser.urlencoded({extended: false}));
router.use(bodyParser.json());

router.post('/info', function(req, res) {
var text = req.body.text;
console.log(text)
var ToneAnalyzerV3 = require('watson-developer-cloud/tone-analyzer/v3');

var tone_analyzer = new ToneAnalyzerV3({
username: 'yourUsername',
password: 'yourPassword',
version_date: '2016-05-19'
});

tone_analyzer.tone({
text: text
}, function(err, tone) {
if (err) console.log(err);
else res.send((JSON.stringify(tone, null, 2)));
})
});

module.exports = router;

文件 server.js:

var server = require('./toneExample.js');
var port = process.env.PORT || process.env.VCAP_APP_PORT || 3000;

server.listen(port, function() {
console.log('Server running on port: %d', port);
});

执行 node server.js 后,我在 POSTMAN 中为 /info 端点做了一个示例,并成功获得结果:

enter image description here

信息:

  • Node 版本:6.11.2
  • 安装的模块:expressbody-parserwatson-developer-cloud

观察:如果使用version_date:2017-09-21后音ID的返回结果:愤怒、恐惧、喜悦、悲伤、分析、有信心,也有尝试。并且仅返回分数满足0.5最低阈值的音调的结果。

查看更多信息Official API Reference 。我建议您尝试检查需要发送的 header 、您可以在正文中使用的类型 post 以及类似的内容。

关于node.js - IBM Watson 音调分析器发布请求问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47423067/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com