frontend: getting correct hostname and port

This commit is contained in:
Mose Müller 2023-08-02 12:06:20 +02:00
parent bc0ae0196d
commit 49d7ea30ef
3 changed files with 13 additions and 7 deletions

View File

@ -19,7 +19,7 @@
"web-vitals": "^3.4.0"
},
"scripts": {
"start": "react-scripts start",
"start": "NODE_ENV=development react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"

View File

@ -1,7 +1,9 @@
import { useEffect, useReducer } from 'react';
import { socket } from './socket';
import { DataServiceComponent } from './components/DataServiceComponent';
import { DataServiceJSON } from './components/GenericComponent';
import { hostname, port, socket } from './socket';
import {
DataServiceComponent,
DataServiceJSON
} from './components/DataServiceComponent';
type ValueType = boolean | string | number | object;
@ -107,7 +109,7 @@ const App = () => {
useEffect(() => {
// Fetch data from the API when the component mounts
fetch('http://localhost:8001/service-properties')
fetch(`http://${hostname}:${port}/service-properties`)
.then((response) => response.json())
.then((data: DataServiceJSON) => dispatch({ type: 'SET_DATA', data }));

View File

@ -1,6 +1,10 @@
import { io } from 'socket.io-client';
const URL = 'ws://localhost:8001/';
// process.env.NODE_ENV === 'production' ? undefined : 'ws://localhost:8001/ws';
export const hostname =
process.env.NODE_ENV === 'development' ? `localhost` : window.location.hostname;
export const port =
process.env.NODE_ENV === 'development' ? 8001 : window.location.port;
const URL = `ws://${hostname}:${port}/`;
console.debug('Websocket: ', URL);
export const socket = io(URL, { path: '/ws/socket.io', transports: ['websocket'] });