From 0a84d4a37c1ade4b04e9030fc6074e58681e185f Mon Sep 17 00:00:00 2001 From: Adam Comella Date: Wed, 1 Jun 2016 10:32:20 -0700 Subject: [PATCH] iOS: Support HTTP headers for source prop on components Summary: Allows developers to specify headers to include in the HTTP request when fetching a remote image. For example, one might leverage this when fetching an image from an endpoint that requires authentication: ``` ``` Note that the header values must be strings. Works on iOS and Android. **Test plan (required)** - Ran a small example like the one above on iOS and Android and ensured the headers were sent to the server. - Ran a small example to ensure that \ components without headers still work. - Currently using this code in our app. Adam Comella Microsoft Corp. Closes https://github.com/facebook/react-native/pull/7338 Reviewed By: javache Differential Revision: D3371458 Pulled By: nicklockwood fbshipit-source-id: cdb24fe2572c3ae3ba82c86ad383af6d85157e20 --- RCTCameraRollManager.m | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/RCTCameraRollManager.m b/RCTCameraRollManager.m index d060224cc..7d9e82aa2 100644 --- a/RCTCameraRollManager.m +++ b/RCTCameraRollManager.m @@ -82,11 +82,12 @@ RCT_EXPORT_MODULE() NSString *const RCTErrorUnableToLoad = @"E_UNABLE_TO_LOAD"; NSString *const RCTErrorUnableToSave = @"E_UNABLE_TO_SAVE"; -RCT_EXPORT_METHOD(saveImageWithTag:(NSString *)imageTag +RCT_EXPORT_METHOD(saveImageWithTag:(NSURLRequest *)imageRequest resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject) { - [_bridge.imageLoader loadImageWithTag:imageTag callback:^(NSError *loadError, UIImage *loadedImage) { + [_bridge.imageLoader loadImageWithURLRequest:imageRequest + callback:^(NSError *loadError, UIImage *loadedImage) { if (loadError) { reject(RCTErrorUnableToLoad, nil, loadError); return;