Javascript。显示来自API调用的图像。怎么用?为什么?

Javascript。显示来自API调用的图像。怎么用?为什么?,javascript,image,api,fetch,display,Javascript,Image,Api,Fetch,Display,我试图显示来自API调用的信息,但无法显示图像。奇怪的是,他们在这里做,但不是在我的浏览器中通过VScode的live server。有人知道我做错了什么吗?我感谢任何可能有用的建议 consturl=”https://api.spacexdata.com/v4/crew"; const resultcontainer=document.querySelector(“.crew_框”); 异步函数fetchInfo(){ 试一试{ const response=等待获取(url); const

我试图显示来自API调用的信息,但无法显示图像。奇怪的是,他们在这里做,但不是在我的浏览器中通过VScode的live server。有人知道我做错了什么吗?我感谢任何可能有用的建议

consturl=”https://api.spacexdata.com/v4/crew";
const resultcontainer=document.querySelector(“.crew_框”);
异步函数fetchInfo(){
试一试{
const response=等待获取(url);
const results=await response.json();
控制台日志(结果);
结果:forEach(功能(乘员){
resultContainer.innerHTML+=`
${crew.name}
${crew.agency}
`;
});
}捕获(错误){
console.log(错误);
resultcontainer.innerHTML=消息(“错误”,错误);
}
}
fetchInfo()
.crew\u盒{
填充:15px;
}
.乘员舱>仪表组{
最大宽度:90%;
}

关于
我们的船员

可能有一个来自imgur方面的https检查,您可以使用 或者

确保全局安装这两个包中的任何一个

npm install -g http-server


可能会有一个来自imgur的
https
检查,您可以使用 或者

确保全局安装这两个包中的任何一个

npm install -g http-server


您没有关闭

${crew.name}
${crew.agency}
`;
});
}捕获(错误){
console.log(错误);
resultcontainer.innerHTML=消息(“错误”,错误);
}
}
fetchInfo()
.crew\u盒{
填充:15px;
}
.乘员舱>仪表组{
最大宽度:90%;
}

关于
我们的船员

您没有关闭

${crew.name}
${crew.agency}
`;
});
}捕获(错误){
console.log(错误);
resultcontainer.innerHTML=消息(“错误”,错误);
}
}
fetchInfo()
.crew\u盒{
填充:15px;
}
.乘员舱>仪表组{
最大宽度:90%;
}

关于
我们的船员

您可能需要确保在图像完全加载后插入新数据,如下所示:

consturl=”https://api.spacexdata.com/v4/crew";
const resultcontainer=document.querySelector(“.crew_框”);
异步函数fetchInfo(){
试一试{
const response=等待获取(url);
const results=await response.json();
结果:forEach(功能(乘员){
const crewBox=document.createElement('div');
const crewImg=新图像();
crewImg.src=crew.image;
crewBox.classList.add('crew_box');
crewImg.onload=函数(){
crewBox.prepend(crewImg);
crewBox.innerHTML+=`
${crew.name}
${crew.agency}
`;
}
结果container.appendChild(crewBox);
});
}捕获(错误){
console.log(错误);
resultcontainer.innerHTML=消息(“错误”,错误);
}
}
fetchInfo()
.crew\u盒{
填充:15px;
}
.乘员舱>仪表组{
最大宽度:90%;
}

关于
我们的船员

您可能需要确保在图像完全加载后插入新数据,如下所示:

consturl=”https://api.spacexdata.com/v4/crew";
const resultcontainer=document.querySelector(“.crew_框”);
异步函数fetchInfo(){
试一试{
const response=等待获取(url);
const results=await response.json();
结果:forEach(功能(乘员){
const crewBox=document.createElement('div');
const crewImg=新图像();
crewImg.src=crew.image;
crewBox.classList.add('crew_box');
crewImg.onload=函数(){
crewBox.prepend(crewImg);
crewBox.innerHTML+=`
${crew.name}
${crew.agency}
`;
}
结果container.appendChild(crewBox);
});
}捕获(错误){
console.log(错误);
resultcontainer.innerHTML=消息(“错误”,错误);
}
}
fetchInfo()
.crew\u盒{
填充:15px;
}
.乘员舱>仪表组{
最大宽度:90%;
}

关于
我们的船员

403表示禁止。检查响应正文和标题,以了解服务器不允许请求的原因。这可能是因为请求头中缺少用户代理这样简单的原因。您有一个输入错误:
“${crew.image}”
应该使用反勾号,而不是引号。@jmargolisvt双引号用于
src
属性。反标记已经在正确的位置,用于包装所有HTML元素。403表示禁止。检查响应正文和标题,以了解服务器不允许请求的原因。这可能是因为请求头中缺少用户代理这样简单的原因。您有一个输入错误:
“${crew.image}”
应该使用反勾号,而不是引号。@jmargolisvt双引号用于
src
属性。反勾号已经位于正确的位置,用于包装所有HTML元素。谢谢您的回答。我是一个初学者,所以我会努力理解这意味着什么:)谢谢你的回答。我是一个初学者,所以我会努力理解这意味着什么:)谢谢你的回答,我现在就来测试一下!谢谢你的回答,我现在就来测试一下!谢谢你的回答,我正在测试。谢谢你的回答,我正在测试。