У нас есть наше нодовое приложение, которое мы хотим использовать для прокси-ноутбука Jupyter, работающего на AWS EMR. Я могу проксировать все мои запросы http из моего приложения узла, используя http-proxy-middleware . Но по какой-то причине я не могу прокси-запросы веб-сокетов. Из-за этого я могу создать новый ноутбук, но не могу запустить ядро. Вот мое промежуточное ПО для прокси
'use strict';
const proxy = require('http-proxy-middleware');
module.exports = proxy({
target: 'http://<EMR master_node IP>:<Port>',
ws: true,
changeOrigin: true,
// onProxyReq: (proxyReq, req, res) => {
// proxyReq.removeHeader('Upgrade');
// proxyReq.removeHeader('Connection');
// proxyReq.setHeader('Upgrade', 'websocket');
// proxyReq.setHeader('Connection', 'upgrade');
// },
secure: true,
loglevel: 'debug'
});
Я также попытался вручную добавить заголовки, которые вы видите как прокомментированные, но это не помогло. Также для серверного приложения у меня включено обновление.
server.on('upgrade', proxy.upgrade);
Любая помощь будет принята с благодарностью.