首先,我对此很陌生,如果对某些人来说这是“常识”,对不起。
因此,使用Node.js的请求包,我想向Google Places API发送HTTP请求,并且该API响应了一个我工作很辛苦的JSON文件。
我的请求代码:
var clean = require("del")
gulp = require("gulp"),
livereload = require("gulp-livereload");
gulp.task("reload-css", function () {
return new Promise(function(resolve, reject) {
gulp.src('./src/*.css')
.pipe(gulp.dest('css'))
.pipe(livereload());
resolve();
});
});
gulp.task("default", function () {
return new Promise(function(resolve, reject) {
gulp.task('watch', function() {
livereload.listen();
gulp.watch('./src/*.css', ['reload-css'])
});
resolve();
});
});
示例响应JSON文件(来自文档):
request(url_nearby, {json: true}, function(err, resp, body){
if(err){
console.log(err);
}else{
console.log(body);
}
});
所以我的问题是如何只打印JSON请求的'name'元素?
-谢谢
答案 0 :(得分:1)
假设results
数组仅包含2个元素,则可以使用results[0]
然后使用name
作为属性来获取第一个元素。
总共是:results[0].name
要获取results
,您需要从响应正文中获取它:
request(url_nearby, {json: true}, function(err, response){
if(err){
console.log(err);
}else{
console.log(response.body.results[0].name);
}
});