I am trying to store some data from an http request into a dictionary, when I return the dictionary however, it is always empty
function getUserData(id){
var user = {}
request('http://apis.scottylabs.org/directory/v1/andrewID/' + id, function (error, response, body) {
if (!error && response.statusCode == 200) {
data = JSON.parse(body);
user.name = data.first_name + " " + data.last_name;
if (Array.isArray(data.department)){
user.dept = data.department[0];
} else {
user.dept = data.department;
}
user.level = data.student_level;
user.class = data.student_class;
// if i print user here it is correct
}
})
// this is just returning {}
return user;
}
How can I fix this?