Estoy trabajando en un proyecto de reacción, pero mi jefe quiere que agregue un archivo index.html de terceros al proyecto. La idea es crear un botón que redirija a esta otra página. Creé un punto final en el servidor.
app.get('/openscad', function(req, res) { res.sendfile(path.join(__dirname, '/openscad/index.html')); });para devolver el archivo index.html cada vez que se solicita /openscad. Inicié el servidor y reaccioné (en desarrollo)
npm start node server.jsy envío solicitudes de proxy de localhost:3000 al servidor (localhost:5000). Cuando recibo la solicitud /openscad directamente a localhost: 5000, muestra mi html, pero cuando lo solicito a localhost: 3000, no se muestra. Acabo de obtener un estado http 200 OK, pero no se devuelve ningún html.
Este es mi archivo de índice de reacción
import React, { Component } from "react"; import ReactDOM from 'react-dom'; import Viewer from './viewer'; import Login from './login'; import { BrowserRouter as Router, Switch, Route } from "react-router-dom"; import HomePage from "./homePage"; import ProfilePage from "./profilePage"; class App extends Component { render() { return ( <Router> <Switch> <Route path="/viewer"> <Viewer /> </Route> <Route path="/access"> <Login /> </Route> <Route path="/profile"> <ProfilePage /> </Route> <Route path="/home"> <HomePage /> </Route> </Switch> </ Router> ) } } ReactDOM.render( <React.StrictMode> <App /> </React.StrictMode>, document.getElementById('root') );Quiero que se renderice en desarrollo para no tener que compilar mi proyecto cada vez que quiera probar esta nueva función. ¿Es posible renderizar mi index.html al solicitarlo localhost:3000?
Por lo que sé, crear el servidor de aplicaciones de reacción solo devuelve index.html para cada solicitud que no es un archivo estático. Intente colocar su html de terceros dentro de /public y luego redirigir a la ruta completa ( /public/other.html ).
Si eso no funciona, tendrá que utilizar un proxy o tal vez expulsar para cambiar las configuraciones.