{"record":{"id":"5d9f01d0512ede4a","repo":"GopeedLab/gopeed","slug":"invalid-request","errorCode":"INVALID_REQUEST","errorMessage":"missing or invalid \"$key\"","messagePattern":"missing or invalid \"\\$key\"","errorType":"error_code","errorClass":"WebViewRpcException","httpStatus":null,"severity":"error","filePath":"ui/flutter/lib/app/rpc/webview_rpc_service.dart","lineNumber":226,"sourceCode":"    final page = _pagesById[_pageId(params)];\n    if (page == null) {\n      throw WebViewRpcException(\n        code: 'PAGE_NOT_FOUND',\n        message: 'page not found',\n      );\n    }\n    return page;\n  }\n\n  String _pageId(Map<String, dynamic> params) => _string(params, 'pageId');\n\n  String _string(Map<String, dynamic> params, String key) {\n    final value = params[key];\n    if (value is String && value.isNotEmpty) {\n      return value;\n    }\n    throw WebViewRpcException(\n      code: 'INVALID_REQUEST',\n      message: 'missing or invalid \"$key\"',\n    );\n  }\n\n  String? _stringOrNull(Map<String, dynamic> params, String key) {\n    final value = params[key];\n    if (value == null) {\n      return null;\n    }\n    if (value is String && value.isNotEmpty) {\n      return value;\n    }\n    throw WebViewRpcException(\n      code: 'INVALID_REQUEST',\n      message: 'invalid \"$key\"',\n    );\n  }\n","sourceCodeStart":208,"sourceCodeEnd":244,"githubUrl":"https://github.com/GopeedLab/gopeed/blob/7b7327ffb30816273a74b142cccc0bc10c5a4c67/ui/flutter/lib/app/rpc/webview_rpc_service.dart#L208-L244","documentation":"Error \"missing or invalid \"$key\"\" thrown in GopeedLab/gopeed.","triggerScenarios":"Thrown at ui/flutter/lib/app/rpc/webview_rpc_service.dart:226 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"7b7327ffb30816273a74b142cccc0bc10c5a4c67","analyzedAt":"2026-08-16T02:51:03.250Z","schemaVersion":2},"datasetVersion":"2026-08-16T03:17:38.424Z"}