如何解决使用 http-proxy-middleware NodeJS 在 Internet 上代理图像文件
我正在开发一个 full-stack app,它使用 http-proxy-middleware
(代理)使用户的浏览器不直接与可能被其互联网阻止的第三方网站交互。但是,在为前端 HTML 代码设置一些背景图像时,我注意到使用直接 URL 设置图像源可能会阻碍用户(例如 https://yts.mx/assets/images/movies/avengers_endgame_2019/medium-cover .jpg)。如何在互联网上代理这些类型的图像资源,使浏览器不直接从图像 URL 请求?
const express = require('express');
const app = express();
const cors = require('cors');
const bodyParser = require('body-parser');
const path = require('path');
app.use(express.static(path.join(__dirname,'build')));
app.use(cors());
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));
const port = process.env.PORT || 4000;
const createProxyMiddleware = require('http-proxy-middleware');
app.use(
createProxyMiddleware('/movies',{
target: 'https://yts.mx/',changeOrigin: true,pathRewrite:{ '^/movies':'/api/v2/list_movies.json' },}),createProxyMiddleware('/likes',pathRewrite:{ '^/likes':'/api/v2/movie_details.json' },createProxyMiddleware('/images',pathRewrite:{ '^/images':'/assets/images/movies/'},);
app.get('/*',(req,res) => {
res.sendFile(path.join(__dirname,'build','index.html'));
});
app.get('*',(request,response) => {
response.sendStatus(404);
});
app.listen(port,() => {
console.log(`Server Running on: ${port}!`)
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。