Merge pull request #253 from max-stytch/max/fix-reloads
fix: Do not reconnect on rerender
This commit is contained in:
@@ -50,6 +50,7 @@ import {
|
|||||||
getMCPServerRequestTimeout,
|
getMCPServerRequestTimeout,
|
||||||
} from "./utils/configUtils";
|
} from "./utils/configUtils";
|
||||||
import { useToast } from "@/hooks/use-toast";
|
import { useToast } from "@/hooks/use-toast";
|
||||||
|
|
||||||
const params = new URLSearchParams(window.location.search);
|
const params = new URLSearchParams(window.location.search);
|
||||||
const CONFIG_LOCAL_STORAGE_KEY = "inspectorConfig_v1";
|
const CONFIG_LOCAL_STORAGE_KEY = "inspectorConfig_v1";
|
||||||
|
|
||||||
@@ -204,8 +205,13 @@ const App = () => {
|
|||||||
localStorage.setItem(CONFIG_LOCAL_STORAGE_KEY, JSON.stringify(config));
|
localStorage.setItem(CONFIG_LOCAL_STORAGE_KEY, JSON.stringify(config));
|
||||||
}, [config]);
|
}, [config]);
|
||||||
|
|
||||||
|
const hasProcessedRef = useRef(false);
|
||||||
// Auto-connect if serverUrl is provided in URL params (e.g. after OAuth callback)
|
// Auto-connect if serverUrl is provided in URL params (e.g. after OAuth callback)
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
if (hasProcessedRef.current) {
|
||||||
|
// Only try to connect once
|
||||||
|
return;
|
||||||
|
}
|
||||||
const serverUrl = params.get("serverUrl");
|
const serverUrl = params.get("serverUrl");
|
||||||
if (serverUrl) {
|
if (serverUrl) {
|
||||||
setSseUrl(serverUrl);
|
setSseUrl(serverUrl);
|
||||||
@@ -219,6 +225,7 @@ const App = () => {
|
|||||||
title: "Success",
|
title: "Success",
|
||||||
description: "Successfully authenticated with OAuth",
|
description: "Successfully authenticated with OAuth",
|
||||||
});
|
});
|
||||||
|
hasProcessedRef.current = true;
|
||||||
// Connect to the server
|
// Connect to the server
|
||||||
connectMcpServer();
|
connectMcpServer();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user