diff --git a/lib/http/common.dart b/lib/http/common.dart index 3096ecf7..2f5f0e84 100644 --- a/lib/http/common.dart +++ b/lib/http/common.dart @@ -18,10 +18,9 @@ class CommonHttp { } static Future querySkipSegments({required String bvid}) async { - var res = await Request().get(Api.getSkipSegments, data: { + var res = await Request().getWithoutCookie(Api.getSkipSegments, data: { 'videoID': bvid, }); - print(res.data); if (res.data is List && res.data.isNotEmpty) { try { return { @@ -39,7 +38,7 @@ class CommonHttp { } } else { return { - 'status': true, + 'status': false, 'data': [], }; } diff --git a/lib/pages/video/detail/controller.dart b/lib/pages/video/detail/controller.dart index be86246e..6d2d7739 100644 --- a/lib/pages/video/detail/controller.dart +++ b/lib/pages/video/detail/controller.dart @@ -722,15 +722,16 @@ class VideoDetailController extends GetxController var res = await CommonHttp.querySkipSegments(bvid: bvid); if (res['status']) { /// TODO 根据segmentType过滤数据 - skipSegments = res['data']; - } else { - SmartDialog.showToast(res['msg']); + skipSegments = res['data'] ?? []; } } // 监听视频进度 void onPositionChanged() async { - if (skipSegments.isEmpty) { + final List sponsorSkipSegments = skipSegments + .where((e) => e.category!.value == SegmentType.sponsor.value) + .toList(); + if (sponsorSkipSegments.isEmpty) { return; } @@ -744,8 +745,7 @@ class VideoDetailController extends GetxController } lastPosition = positionMs; - - for (SegmentDataModel segment in skipSegments) { + for (SegmentDataModel segment in sponsorSkipSegments) { try { final segmentStart = segment.segment!.first.toInt(); final segmentEnd = segment.segment!.last.toInt();