Fix: small fixes for Omada proxy (#6372)

This commit is contained in:
shamoon 2026-02-28 11:36:43 -08:00 committed by GitHub
parent 29e2502d74
commit 51d718a21a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 18 additions and 6 deletions

View File

@ -95,8 +95,8 @@ export default async function omadaProxyHandler(req, res) {
if (loginStatus !== 200 || loginResponseData.errorCode > 0) {
return res
.status(status)
.json({ error: { message: "Error logging in to Oamda controller", url: loginUrl, data: loginResponseData } });
.status(loginStatus)
.json({ error: { message: "Error logging in to Omada controller", url: loginUrl, data: loginResponseData } });
}
const { token } = loginResponseData.result;
@ -225,7 +225,13 @@ export default async function omadaProxyHandler(req, res) {
if (status !== 200 || siteResponseData.errorCode > 0) {
logger.debug(`HTTP ${status} getting stats for site ${widget.site} with message ${siteResponseData.msg}`);
return res.status(500).send(data);
return res.status(status === 200 ? 500 : status).json({
error: {
message: "Error getting stats",
url: siteStatsUrl,
data: siteResponseData,
},
});
}
const alertUrl =

View File

@ -151,7 +151,7 @@ describe("widgets/omada/proxy", () => {
await omadaProxyHandler(req, res);
expect(res.statusCode).toBe(200);
expect(res.body.error.message).toBe("Error logging in to Oamda controller");
expect(res.body.error.message).toBe("Error logging in to Omada controller");
expect(res.body.error.url).toBe("http://omada/api/v2/login");
expect(res.body.error.data).toEqual({ errorCode: 1, msg: "nope" });
});
@ -288,7 +288,7 @@ describe("widgets/omada/proxy", () => {
expect(res.body.error.message).toBe("Error switching site");
});
it("returns 500 with the raw payload when overview stats retrieval fails (v5)", async () => {
it("returns a structured error when overview stats retrieval fails (v5)", async () => {
getServiceWidget.mockResolvedValue({ url: "http://omada", username: "u", password: "p", site: "Default" });
httpProxy
@ -316,6 +316,12 @@ describe("widgets/omada/proxy", () => {
await omadaProxyHandler(req, res);
expect(res.statusCode).toBe(500);
expect(res.body).toBe(JSON.stringify({ errorCode: 1, msg: "bad" }));
expect(res.body).toEqual({
error: {
message: "Error getting stats",
url: "http://omada/cid/api/v2/sites/siteid/dashboard/overviewDiagram?token=t&currentPage=1&currentPageSize=1000",
data: { errorCode: 1, msg: "bad" },
},
});
});
});