如何显示来自 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));
});