Added error messages when Steam ID is invalid or missing

This commit is contained in:
Sahat Yalkabov
2014-02-06 04:13:42 -05:00
parent 78b27a4841
commit f0422b5dd8

View File

@ -340,7 +340,7 @@ exports.getPayPalCancel = function(req, res, next) {
* Steam API example. * Steam API example.
*/ */
exports.getSteam = function(req, res) { exports.getSteam = function(req, res, next) {
var steamId = '76561197982488301'; var steamId = '76561197982488301';
var query = { l: 'english', steamid: steamId, key: secrets.steam.apiKey }; var query = { l: 'english', steamid: steamId, key: secrets.steam.apiKey };
@ -349,14 +349,16 @@ exports.getSteam = function(req, res) {
query.appid = '49520'; query.appid = '49520';
var qs = querystring.stringify(query); var qs = querystring.stringify(query);
request.get({ url: 'http://api.steampowered.com/ISteamUserStats/GetPlayerAchievements/v0001/?' + qs, json: true }, function(error, request, body) { request.get({ url: 'http://api.steampowered.com/ISteamUserStats/GetPlayerAchievements/v0001/?' + qs, json: true }, function(error, request, body) {
done(error, body.playerstats); if (request.statusCode === 401) return done(new Error('Missing or Invalid Steam API Key'));
done(error, body);
}); });
}, },
playerSummaries: function(done) { playerSummaries: function(done) {
query.steamids = steamId; query.steamids = steamId;
var qs = querystring.stringify(query); var qs = querystring.stringify(query);
request.get({ url: 'http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?' + qs, json: true }, function(error, request, body) { request.get({ url: 'http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?' + qs, json: true }, function(error, request, body) {
done(error, body.response.players[0]); if (request.statusCode === 401) return done(new Error('Missing or Invalid Steam API Key'));
done(error, body);
}); });
}, },
ownedGames: function(done) { ownedGames: function(done) {
@ -364,7 +366,8 @@ exports.getSteam = function(req, res) {
query.include_played_free_games = 1; query.include_played_free_games = 1;
var qs = querystring.stringify(query); var qs = querystring.stringify(query);
request.get({ url: 'http://api.steampowered.com/IPlayerService/GetOwnedGames/v0001/?' + qs, json: true }, function(error, request, body) { request.get({ url: 'http://api.steampowered.com/IPlayerService/GetOwnedGames/v0001/?' + qs, json: true }, function(error, request, body) {
done(error, body.response.games); if (request.statusCode === 401) return done(new Error('Missing or Invalid Steam API Key'));
done(error, body);
}); });
} }
}, },
@ -372,9 +375,9 @@ exports.getSteam = function(req, res) {
if (err) return next(err); if (err) return next(err);
res.render('api/steam', { res.render('api/steam', {
title: 'Steam Web API', title: 'Steam Web API',
ownedGames: results.ownedGames, ownedGames: results.ownedGames.response.games,
playerAchievemments: results.playerAchievements, playerAchievemments: results.playerAchievements.playerstats,
playerSummary: results.playerSummaries playerSummary: results.playerSummaries.response.players[0]
}); });
}); });
}; };