diff --git a/lib/http/html.dart b/lib/http/html.dart index b7819e2c..6e28d8a0 100644 --- a/lib/http/html.dart +++ b/lib/http/html.dart @@ -11,7 +11,9 @@ class HtmlHttp { "https://www.bilibili.com/opus/$id", extra: {'ua': 'pc'}, ); - + if (response.data is! String && response.data is! List) { + return; + } if (response.data.contains('Redirecting to')) { RegExp regex = RegExp(r'//([\w\.]+)/(\w+)/(\w+)'); Match match = regex.firstMatch(response.data)!; @@ -73,6 +75,9 @@ class HtmlHttp { "https://www.bilibili.com/$dynamicType/$id/", extra: {'ua': 'pc'}, ); + if (response.data is! String && response.data is! List) { + return; + } Document rootTree = parse(response.data); Element body = rootTree.body!; Element appDom = body.querySelector('#app')!; diff --git a/lib/pages/html/controller.dart b/lib/pages/html/controller.dart index 29f55278..0f0d7b3a 100644 --- a/lib/pages/html/controller.dart +++ b/lib/pages/html/controller.dart @@ -32,11 +32,13 @@ class HtmlRenderController extends ReplyController { } else { res = await HtmlHttp.reqReadHtml(id, dynamicType); } - response = res; - oid.value = res['commentId']; - queryData(); - if (res['status'] == true) { - loaded.value = true; + if (res != null) { + response = res; + oid.value = res['commentId']; + queryData(); + if (res['status'] == true) { + loaded.value = true; + } } } diff --git a/lib/pages/html/view.dart b/lib/pages/html/view.dart index af634fe3..c792d39e 100644 --- a/lib/pages/html/view.dart +++ b/lib/pages/html/view.dart @@ -444,7 +444,7 @@ class _HtmlRenderPageState extends State padding: const EdgeInsets.fromLTRB(12, 8, 12, 8), sliver: Obx( () => _htmlRenderCtr.loaded.value - ? _htmlRenderCtr.response['isJsonContent'] + ? _htmlRenderCtr.response['isJsonContent'] == true ? ArticleContent( htmlContent: _htmlRenderCtr.response['content'], )