Skip to content

Commit 6581967

Browse files
committed
Take cookie-based auth into account
1 parent 6051394 commit 6581967

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

openhands/server/routes/settings.py

+9-7
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,9 @@ async def load_settings(request: Request) -> Settings | None:
3434
)
3535

3636
# For security reasons we don't ever send the api key to the client
37+
github_token = settings.github_token or request.state.github_token
3738
settings.llm_api_key = 'SET' if settings.llm_api_key else None
38-
settings.github_token_is_set = True if settings.github_token else False
39+
settings.github_token_is_set = True if github_token else False
3940
settings.github_token = None
4041

4142
return settings
@@ -80,8 +81,13 @@ async def store_settings(
8081
if settings.github_token is None:
8182
settings.github_token = existing_settings.github_token
8283

83-
# type: ignore
84+
response = JSONResponse(
85+
status_code=status.HTTP_200_OK,
86+
content={'message': 'Settings stored'},
87+
)
88+
8489
if settings.unset_github_token:
90+
response.delete_cookie('github_token')
8591
settings.github_token = None
8692
settings.unset_github_token = None
8793

@@ -92,11 +98,7 @@ async def store_settings(
9298
)
9399

94100
await settings_store.store(settings)
95-
96-
return JSONResponse(
97-
status_code=status.HTTP_200_OK,
98-
content={'message': 'Settings stored'},
99-
)
101+
return response
100102
except Exception as e:
101103
logger.warning(f'Invalid token: {e}')
102104
return JSONResponse(

0 commit comments

Comments
 (0)