如何显示来自 API 个请求的 console.log 个结果
How to display console.log results from API requests
//Express
var express = require('express');
var server = express();
//Steam
var SteamWebAPI = require('steamwebapi').SteamWebAPI;
SteamWebAPI.setAPIKey('XXXXXXXXXXXXXXXXXXXXXXXXXXXX');
//Steam - Recently Played Games
server.get('/games', function (req, res) {
SteamWebAPI.getRecentlyPlayedGames('76561198190043289', 5, function(response) {
res.json(response.response.games);
});
});
//Localhost
server.listen(3000, function () {
console.log('Server: ');
});
这是我的输出:
[{"appid":730,"name":"Counter-Strike: Global Offensive","playtime_2weeks":620,"playtime_forever":4016,"img_icon_url":"69f7ebe2735c366c65c0b33dae00e12dc40edbe4","img_logo_url":"d0595ff02f5c79fd19b06f4d6165c3fda2372820"}]
好的,如果您访问网站:https://steamid.io/,输入您的姓名,按下按钮 'lookup',您将获得您的 ID。我该怎么做?是否可以让该用户输入他的 name/id 并获取信息。这样只有我一个人可以输入用户,他根据自己的要求得到文字,图片。
像,这几天我了解了很多有关Steam Web Api的知识,但我仍然没有弄清楚如何显示数据。有大佬帮了我,不过我们用的是Angular,我还是不太熟悉,这几天正打算学习Ember.js,但是有没有替代品呢?
如果你想按照你的例子去做,看来你错过了前面的部分,还有一些后端。
首先您必须创建一个表单。在您的情况下,只需输入询问用户 ID 和提交按钮就足够了。然后你在 html 文件中创建了你的表单,使用 Express 框架提供的渲染函数渲染它 (http://expressjs.com/en/4x/api.html#app.render)
还有 html 表格上的一个简单提醒 (http://www.w3schools.com/html/html_forms.asp)
但是你必须将它渲染到特定的 URL,例如
// Render your basic form
// The form is in the form.html file
// By default, views have to be placed into the view or views folder, I don't know exactly no more
server.get('/ask_user_id', function (req, res) {
app.render('form', function(err, html){
if(err) return res.send(err);
else return res.send(html)
});
});
因此,如果您继续 localhost:3000/ask_user_id
,您的表单将被渲染
其次 当用户将其 ID 写入您的输入并提交表单时,您必须检索这些信息,然后调用您的 steam API。因此,如果您的表单操作是 POST,要提交的 Url 是 /user_infos
,用户 ID 名称的输入是 userId
,这里将是代码。
// Render your basic form
// The form is in the form.html file
// By default, views have to be placed into the view or views folder, I don't know exactly no more
server.get('/ask_user_id', function (req, res) {
app.render('form', function(err, html){
if(err) return res.send(err);
else return res.send(html)
});
});
// You have to have a route that handle your form submission
server.post('/user_infos', function (req, res) {
// All your form submitted is in your req.body
// So retrieve the userID
var _userID = req.body.userId;
// Then sent the variable to the SteamAPI
SteamWebAPI.getRecentlyPlayedGames(_userID, 5, function(response) {
return res.json(response.response.games);
});
});
希望对您有所帮助
在你的 controller/Factory 中,确保你有一个回调函数来获取服务器的响应。
$scope.postData = function(){
$http.post('/', {data: someData})
.then(function(response){
console.log(JSON.stringify(response.data));
});
//Express
var express = require('express');
var server = express();
//Steam
var SteamWebAPI = require('steamwebapi').SteamWebAPI;
SteamWebAPI.setAPIKey('XXXXXXXXXXXXXXXXXXXXXXXXXXXX');
//Steam - Recently Played Games
server.get('/games', function (req, res) {
SteamWebAPI.getRecentlyPlayedGames('76561198190043289', 5, function(response) {
res.json(response.response.games);
});
});
//Localhost
server.listen(3000, function () {
console.log('Server: ');
});
这是我的输出:
[{"appid":730,"name":"Counter-Strike: Global Offensive","playtime_2weeks":620,"playtime_forever":4016,"img_icon_url":"69f7ebe2735c366c65c0b33dae00e12dc40edbe4","img_logo_url":"d0595ff02f5c79fd19b06f4d6165c3fda2372820"}]
好的,如果您访问网站:https://steamid.io/,输入您的姓名,按下按钮 'lookup',您将获得您的 ID。我该怎么做?是否可以让该用户输入他的 name/id 并获取信息。这样只有我一个人可以输入用户,他根据自己的要求得到文字,图片。
像,这几天我了解了很多有关Steam Web Api的知识,但我仍然没有弄清楚如何显示数据。有大佬帮了我,不过我们用的是Angular,我还是不太熟悉,这几天正打算学习Ember.js,但是有没有替代品呢?
如果你想按照你的例子去做,看来你错过了前面的部分,还有一些后端。
首先您必须创建一个表单。在您的情况下,只需输入询问用户 ID 和提交按钮就足够了。然后你在 html 文件中创建了你的表单,使用 Express 框架提供的渲染函数渲染它 (http://expressjs.com/en/4x/api.html#app.render)
还有 html 表格上的一个简单提醒 (http://www.w3schools.com/html/html_forms.asp)
但是你必须将它渲染到特定的 URL,例如
// Render your basic form
// The form is in the form.html file
// By default, views have to be placed into the view or views folder, I don't know exactly no more
server.get('/ask_user_id', function (req, res) {
app.render('form', function(err, html){
if(err) return res.send(err);
else return res.send(html)
});
});
因此,如果您继续 localhost:3000/ask_user_id
,您的表单将被渲染
其次 当用户将其 ID 写入您的输入并提交表单时,您必须检索这些信息,然后调用您的 steam API。因此,如果您的表单操作是 POST,要提交的 Url 是 /user_infos
,用户 ID 名称的输入是 userId
,这里将是代码。
// Render your basic form
// The form is in the form.html file
// By default, views have to be placed into the view or views folder, I don't know exactly no more
server.get('/ask_user_id', function (req, res) {
app.render('form', function(err, html){
if(err) return res.send(err);
else return res.send(html)
});
});
// You have to have a route that handle your form submission
server.post('/user_infos', function (req, res) {
// All your form submitted is in your req.body
// So retrieve the userID
var _userID = req.body.userId;
// Then sent the variable to the SteamAPI
SteamWebAPI.getRecentlyPlayedGames(_userID, 5, function(response) {
return res.json(response.response.games);
});
});
希望对您有所帮助
在你的 controller/Factory 中,确保你有一个回调函数来获取服务器的响应。
$scope.postData = function(){
$http.post('/', {data: someData})
.then(function(response){
console.log(JSON.stringify(response.data));
});