javascript - 如何使用 Fetch 在前端显示通过 HTTP (Node.js) 发送的图像?

标签 javascript html node.js http

我正在尝试使用 Node.js 通过 HTTP 获取一个 URL ( http://localhost ),该 URL 将返回图片(此时,扩展名并不重要)。

前端

let image = await fetch('http://localhost:3031', {
   mode: 'cors',
   method: 'GET'
})

后端

var http = require('http');
var fs = require('fs');

http.createServer(function (req, res) {
    res.setHeader('Content-Type', 'image/png');
    fs.readFile('image.png', (err, data) => {
        res.write(data, "binary");
        res.end();
    });
}).listen(3031)

我想拍摄该照片,然后将其显示到网站中。

我正在获取文件,而不是 SRC

最佳答案

直接在 HTML 中为:

<img id="loadedimage" src="http://localhost:3031/"/>

或者通过fetch,使用createObjectURL:

var element = document.getElementById('loadedimage');
var response = await fetch('http://localhost:3031');
var image = await response.blob();
element.src = URL.createObjectURL(image);

工作演示:https://codepen.io/bortao/pen/oNXpvYR

关于javascript - 如何使用 Fetch 在前端显示通过 HTTP (Node.js) 发送的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60593647/

相关文章:

mysql - node.js - 如何扩展 mysql 结果对象

javascript - React 表单不更新 mongo 数据库

jquery - 如何使用星号之类的 Bootstrap 图标来给星级评分?

javascript - js中添加两个变量

angularjs - 如何将最大长度属性添加到 Angular-xeditable?

javascript - 如何将错误记录到 Firebase Cloud Functions 日志?

javascript - 为 Node 和客户端定义模块的最佳方法

javascript - 通过键名从数组中获取对象

javascript - 使用 JavaScript 进行响应式设计

javascript - 如何使 jquery 脚本与 jquery 2.x.x 兼容