2017-02-17 2 views
0

Как говорится в названии, я пытаюсь использовать RandomORG API для генерации (истинных) случайных чисел, единственное, когда я пытаюсь создать случайное число в моем NodeJS, он возвращает undefined.RandomORG API в NodeJS, возвращающем неопределенные значения

Это, как я это делаю:

var RandomOrgAPI = require('random'); 
    var die; 

    //Here I log a random integer to the console. 
    console.log("" + RandomOrgAPI.integer({min:1,max:5,num:1},function(result){console.log(die = result[0])})); 
+0

Просьба указать фактическую ошибку в командной строке. –

+0

«RandomOrgAPI.integer» - это асинхронный метод, он не вернет результат, он вызовет параметр «callback» с результатом в качестве первого параметра. 'console.log' не может ничего показать, кроме результата' '" + undefined'. –

+0

Выполняется ли 'console.log' * внутри * обратный вызов или нет? – apsillers

ответ

0

Вы, скорее всего, не в состоянии правильно загрузить библиотеку.

Попробуйте

var RandomOrgAPI = require('random-org-api'); 

и не забудьте установить библиотеку так:

npm install random-org-api 

Из их документации это выглядит, как это должно быть .integers не .integer

var die; 
RandomOrgAPI.integers({min:1,max:6,num:1},function(result){console.log(die = result[0])}); 
+0

Я проверил их github, и они сказали, что мне нужно сделать npm install random. Я попробую это! –

+0

https://www.npmjs.com/package/random-org-api - это то, на что я смотрел. Я бы использовал пакет differnet. Этот очень старый. Попробуйте следующее: https: //www.npmjs.com/package/random-js –

+0

ТипError: RandomOrgAPI.integer не является функцией на toWin (/home/bot/site.js:1762:35) at null._repeat (/home/bot/site.js:1724:5) на обертке [как _onTimeout] (timers.js: 275: 11) на Timer.listOnTimeout (timers.js: 92: 15) –

0

Прежде всего, проверьте, используете ли вы корр. ЭСТ пакет или нет Вы используете random пакет, но код, кажется, связано с random.js, как вы используете .integer()

Если нет, то сделать npm i random --save, ниже код работает отлично используется Вызов на generateIntegers() функцию

источник код предоставляет generateIntegers(callback,options,errorCallback)

https://www.npmjs.com/package/random со ссылкой GitHub код

https://github.com/rcombs/node-random/blob/master/main.js

const RandomOrgAPI = require("random"); 
var die; 
options = { 
    secure: true, // Make the request secure 
    num: 1,  // Get 1 integer 
    min: 1,  // Minimum of 1 
    max: 5,  // Maximum of 5 
} 
function randomCallback(integers){ 
    die = integers[0][0]; 
    console.log(integers[0][0]) // will print a random number between 1 and 5 
} 
RandomOrgAPI.generateIntegers(randomCallback,options); 
Смежные вопросы