(request: Request, response: Response, session: SessionDep, trans: Trans, appId: str)
| 50 | |
| 51 | @router.get("/app/{appId}", include_in_schema=False) |
| 52 | async def getApp(request: Request, response: Response, session: SessionDep, trans: Trans, appId: str) -> AssistantModel: |
| 53 | if not appId: |
| 54 | raise Exception('miss assistant appId') |
| 55 | db_model = session.exec(select(AssistantModel).where(AssistantModel.app_id == appId)).first() |
| 56 | if not db_model: |
| 57 | raise RuntimeError(f"assistant application not exist") |
| 58 | db_model = AssistantModel.model_validate(db_model) |
| 59 | origin = request.headers.get("origin") or get_origin_from_referer(request) |
| 60 | if not origin: |
| 61 | raise RuntimeError(trans('i18n_embedded.invalid_origin', origin=origin or '')) |
| 62 | origin = origin.rstrip('/') |
| 63 | if not origin_match_domain(origin, db_model.domain): |
| 64 | raise RuntimeError(trans('i18n_embedded.invalid_origin', origin=origin or '')) |
| 65 | |
| 66 | response.headers["Access-Control-Allow-Origin"] = origin |
| 67 | return db_model |
| 68 | |
| 69 | |
| 70 | @router.get("/validator", response_model=AssistantValidator, include_in_schema=False) |
nothing calls this directly
no test coverage detected