1

我的代码目前向外部 API 发出请求,然后使用 JSON 对象进行响应。我目前将其记录到我的控制台上,所以这方面没有问题。但是,我需要在外部引用该对象,以便可以在我的哈巴狗页面上向客户端显示它。

以下外部 javascript 文件“server2.js”与 app.js 位于同一位置。

function DemoApiNgClient() {
    var FIRST_INDEX = 0;
    var DEFAULT_ENCODING = 'utf-8';
    var DEFAULT_JSON_FORMAT = '\t';

    var options = {
        hostname: 'api.betfair.com',
        port: 443,
        path: '/exchange/betting/json-rpc/v1',
        method: 'POST',
        headers: {
            'X-Application': '',
            'Accept': 'application/json',
            'Content-type': 'application/json',
            'X-Authentication': 'emTox++='
        }
    }

    console.log("Get horse racing event id");
    // Define Horse Racing in filter object
    var jsonRequest = '{"jsonrpc":"2.0","method":"SportsAPING/v1.0/' + 'listEventTypes' + '", "params": {"filter":{}}, "id": 1}'
    var str = '';
    var req = https.request(options, function (res) {
        res.setEncoding(DEFAULT_ENCODING);
        res.on('data', function (chunk) {
            str += chunk;
        });

        res.on('end', function (chunk) {
            // On resposne parse Json and check for errors
            response = JSON.parse(str);
            console.log('Here is our response! ' + util.inspect(response, {showHidden: false, depth: null}))

        });     
    });
    // Send Json request object
    req.write(jsonRequest, DEFAULT_ENCODING);
    req.end();

    req.on('error', function (e) {
        console.log('Problem with request: ' + e.message);
    });
}

我已经尝试了用于嵌套函数的导出模块,但是 res.on 块不一定是函数,所以它不会那样做。

最终目标是在客户端的 pug 中显示来自外部 API 的响应对象,并且无法引用该对象是我唯一的难点,其他一切都有效。

4

0 回答 0