Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 引用请求函数之外的值_Javascript_Node.js_Request - Fatal编程技术网

Javascript 引用请求函数之外的值

Javascript 引用请求函数之外的值,javascript,node.js,request,Javascript,Node.js,Request,我想访问变量JSON.parse(body),但不是在函数请求的回调函数中。我怎么能做到? 这是我的密码: request('https://' + region + '.api.pvp.net/api/lol/' + region + '/v2.5/league/by-summoner/' + id + '/entry?api_key=' + APIKEY, function(error, response, body) { return JSON.parse(body) }) 感谢

我想访问变量JSON.parse(body),但不是在函数请求的回调函数中。我怎么能做到? 这是我的密码:

request('https://' + region + '.api.pvp.net/api/lol/' + region + '/v2.5/league/by-summoner/' + id + '/entry?api_key=' + APIKEY, function(error, response, body) {
    return JSON.parse(body)
})

感谢您的帮助。

您可以通过以下方式设置变量

var Parsedbody = request('https://'...) ({
  return JSON.parse(body); });
或者您可以在请求之前定义一个变量,并在请求中分配它,例如

var ParsedBody;
request('https://'...) ({
  ParsedBody = JSON.parse(body); });

您可以通过以下方式设置变量

var Parsedbody = request('https://'...) ({
  return JSON.parse(body); });
或者您可以在请求之前定义一个变量,并在请求中分配它,例如

var ParsedBody;
request('https://'...) ({
  ParsedBody = JSON.parse(body); });

您不能像这样从回调中
返回
,在异步操作完成之前,您不能访问该操作的值,因此您需要某种同步方法。一是:

function callback(body) {
    // use body
}

request(url, (err, response, body) => {
  // handle error

  callback(JSON.parse(body));
});

您不能像这样从回调中
返回
,在异步操作完成之前,您不能访问该操作的值,因此您需要某种同步方法。一是:

function callback(body) {
    // use body
}

request(url, (err, response, body) => {
  // handle error

  callback(JSON.parse(body));
});

谢谢,但我不能用这个来设置leagueEntry=body?var联盟进入;函数回调(body){leagueEntry=body}请求(url,(err,response,body)=>{callback(JSON.parse(body))}谢谢,但是我不能用这个设置leagueEntry=body?var联盟进入;函数回调(body){leagueEntry=body}请求(url,(err,response,body)=>{callback(JSON.parse(body))}