mirror of
https://github.com/zhigang1992/react-native-video-cache.git
synced 2026-01-12 16:42:21 +08:00
36 lines
899 B
Objective-C
36 lines
899 B
Objective-C
#import "VideoCache.h"
|
|
#import <KTVHTTPCache/KTVHTTPCache.h>
|
|
|
|
@implementation VideoCache
|
|
|
|
RCT_EXPORT_MODULE()
|
|
|
|
RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(convert:(NSString *)url)
|
|
{
|
|
if (!KTVHTTPCache.proxyIsRunning) {
|
|
NSError *error;
|
|
[KTVHTTPCache proxyStart:&error];
|
|
if (error) {
|
|
return url;
|
|
}
|
|
}
|
|
return [KTVHTTPCache proxyURLWithOriginalURL:[NSURL URLWithString:url]].absoluteString;
|
|
}
|
|
|
|
RCT_EXPORT_METHOD(convertAsync:(NSString *)url
|
|
resolver:(RCTPromiseResolveBlock)resolve
|
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
{
|
|
if (!KTVHTTPCache.proxyIsRunning) {
|
|
NSError *error;
|
|
[KTVHTTPCache proxyStart:&error];
|
|
if (error) {
|
|
reject(@"init.error", @"failed to start proxy server", error);
|
|
return;
|
|
}
|
|
}
|
|
resolve([KTVHTTPCache proxyURLWithOriginalURL:[NSURL URLWithString:url]].absoluteString);
|
|
}
|
|
|
|
@end
|