Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.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 SyntaxError:JSON.parse(<;anonymous>;)上的JSON输入意外结束(";data";)_Javascript_Node.js_Api_Express_Https - Fatal编程技术网

Javascript SyntaxError:JSON.parse(<;anonymous>;)上的JSON输入意外结束(";data";)

Javascript SyntaxError:JSON.parse(<;anonymous>;)上的JSON输入意外结束(";data";),javascript,node.js,api,express,https,Javascript,Node.js,Api,Express,Https,我试着使用其他api,它工作了,但它不与这一个工作 const express = require("express"); const https = require("https"); const bodyParser = require("body-parser"); const app = express(); app.use(bodyParser.urlencoded({extended:true})); app.use(b

我试着使用其他api,它工作了,但它不与这一个工作

const express = require("express");
const https = require("https");
const bodyParser = require("body-parser");

const app = express();

app.use(bodyParser.urlencoded({extended:true}));
app.use(bodyParser.json());
app.get("/",(req, res)=>{
https.get("https://pixabay.com/api/?key=xxx-zzz&q=yellow+flowers&image_type=photo", (response)=>{
   console.log(response.statusCode);
       response.on("data",d=>{
           const lala = JSON.parse(d);
           console.log(lala);
       })
    
    })
});
app.listen(3000,()=>{
    console.log("Server started on port 3000")
})
我把这个放在控制台里了

200
未定义:1
{“total”:28739,“totalHits”:500,“hits”:[{“id”:3063284,“pageURL”:”https://pixabay.com/photos/rose-flower-petal-floral-noble-3063284/,“类型”:“照片”,“标签”:“玫瑰、花、花瓣”,“预览”:https://cdn.pixabay.com/photo/2018/01/05/16/24/rose-3063284_150.jpg,“预览宽度”:150,“预览宽度”:99,“Web格式URL”:https://pixaba

SyntaxError:JSON输入意外结束
在JSON.parse()处

不表示请求已完成。请求数据以数据包的形式发送

使用
数据
事件收集所有数据,然后在与数据交互之前将其合并到
结束
事件中:

const express=require(“express”);
const https=require(“https”);
const bodyParser=require(“body parser”);
常量app=express();
use(bodyParser.urlencoded({extended:true}));
use(bodyParser.json());
应用程序获取(“/”,(请求,请求)=>{
https.get(“https://pixabay.com/api/?key=xxx-zzz&q=黄色+花卉和图像类型=照片“,(响应)=>{
console.log(响应.状态码);
让chunks=[];
响应.on(“数据”,d=>{
推(d);
});
响应。在(“结束”、()=>{
const lala=JSON.parse(Buffer.concat(chunks.toString('utf8'));
控制台日志(lala);
});
});
});
app.listen(3000,()=>{
log(“服务器在端口3000上启动”);
});

是否还有另一个
console.log()
您在代码段中没有显示?未定义的代码段在哪里:1来自哪里?控制台中有三个输出,我只能找到2个console.logs。缺少一些内容。还有一条建议,永远不要共享带有敏感信息(如API键)的代码段。如果您在代码段中省略API,那将是明智的做法。@SiradjiAwoual感谢您的帮助医生建议我不要再做了