【发布时间】:2018-05-25 08:51:16
【问题描述】:
所以我在 Blizzard API Battle.Net 中查询一些信息、角色名称和他们所在的领域。当然,用户可以查询不存在的角色,所以暴雪会返回 404对我来说,我的 server.js 文件不知道如何处理它,即使我放置了一些东西来处理它。
相关server.js代码:
var express = require('express');
var app = express();
var fs = require('fs');
var bodyParser = require('body-parser');
var jsonParser = bodyParser.json();
const blizzard = require('blizzard.js').initialize({apikey: "dummy"});
app.use(express.static(__dirname + '/Source'));
//Listen on port 3000
app.listen(3000, function() {
console.log("Launch successful. To access app, open your browser and insert the following URL into your address bar: http://localhost:3000/");
});
app.post('/buttonpress', jsonParser, function (req, res) {
blizzard.wow.character(['profile'], { origin: 'us', realm: req.body.realm.name, name: req.body.name })
.then(response => {
if(response.status != 200){
res.send("That character doesn't exist! Please enter a valid character name.");
} else {
console.log(response.data);
res.send(response.data);
}
});
});
我尝试通过向客户端发送一些内容告诉用户:Character DNE! 来处理任何不是 200 的内容,但是 vscode 给了我这篇文章标题中提到的一些红色错误代码(无论如何在 vscode 调试器中)。
当我从命令行尝试此操作时,只运行node server.js,当我单击搜索按钮时没有任何反应。我设置了断点,看起来该函数没有从服务器获得响应。所以无论如何都会发生 404,但我不知道如何处理它。
【问题讨论】:
标签: javascript node.js http express