mirror of
https://github.com/anomalyco/opencode.git
synced 2026-05-03 19:26:41 +00:00
fix(desktop-electron): add CORS headers to main window webRequest (#23633)
This commit is contained in:
@@ -100,6 +100,19 @@ export function createMainWindow() {
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
win.webContents.session.webRequest.onBeforeSendHeaders((details, callback) => {
|
||||||
|
const { requestHeaders } = details
|
||||||
|
upsertKeyValue(requestHeaders, "Access-Control-Allow-Origin", ["*"])
|
||||||
|
callback({ requestHeaders })
|
||||||
|
})
|
||||||
|
|
||||||
|
win.webContents.session.webRequest.onHeadersReceived((details, callback) => {
|
||||||
|
const { responseHeaders = {} } = details
|
||||||
|
upsertKeyValue(responseHeaders, "Access-Control-Allow-Origin", ["*"])
|
||||||
|
upsertKeyValue(responseHeaders, "Access-Control-Allow-Headers", ["*"])
|
||||||
|
callback({ responseHeaders })
|
||||||
|
})
|
||||||
|
|
||||||
state.manage(win)
|
state.manage(win)
|
||||||
loadWindow(win, "index.html")
|
loadWindow(win, "index.html")
|
||||||
wireZoom(win)
|
wireZoom(win)
|
||||||
@@ -177,3 +190,17 @@ function wireZoom(win: BrowserWindow) {
|
|||||||
win.webContents.setZoomFactor(1)
|
win.webContents.setZoomFactor(1)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function upsertKeyValue(obj: Record<string, any>, keyToChange: string, value: any) {
|
||||||
|
const keyToChangeLower = keyToChange.toLowerCase()
|
||||||
|
for (const key of Object.keys(obj)) {
|
||||||
|
if (key.toLowerCase() === keyToChangeLower) {
|
||||||
|
// Reassign old key
|
||||||
|
obj[key] = value
|
||||||
|
// Done
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Insert at end instead
|
||||||
|
obj[keyToChange] = value
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user