Merge branch 'feature-sponsorBlock'

This commit is contained in:
guozhigq
2024-11-10 12:46:47 +08:00
8 changed files with 218 additions and 10 deletions

View File

@ -615,4 +615,8 @@ class Api {
/// 订阅状态
static const String videoRelation = '/x/web-interface/archive/relation';
/// 获取空降区间
static const String getSkipSegments =
'${HttpString.sponsorBlockBaseUrl}/api/skipSegments';
}

View File

@ -1,3 +1,5 @@
import 'package:pilipala/models/sponsor_block/segment.dart';
import 'index.dart';
class CommonHttp {
@ -14,4 +16,32 @@ class CommonHttp {
};
}
}
static Future querySkipSegments({required String bvid}) async {
var res = await Request().get(Api.getSkipSegments, data: {
'videoID': bvid,
});
print(res.data);
if (res.data is List && res.data.isNotEmpty) {
try {
return {
'status': true,
'data': res.data
.map<SegmentDataModel>((e) => SegmentDataModel.fromJson(e))
.toList(),
};
} catch (err) {
return {
'status': false,
'data': [],
'msg': 'sponsorBlock数据解析失败: $err',
};
}
} else {
return {
'status': true,
'data': [],
};
}
}
}

View File

@ -7,6 +7,7 @@ class HttpString {
static const String passBaseUrl = 'https://passport.bilibili.com';
static const String messageBaseUrl = 'https://message.bilibili.com';
static const String bangumiBaseUrl = 'https://bili.meark.me';
static const String sponsorBlockBaseUrl = 'https://www.bsbsb.top';
static const List<int> validateStatusCodes = [
302,
304,