react-native/Libraries/WebSocket
Satyajit Sahoo be56a3efee Implement Blob support for XMLHttpRequest
Summary:
This PR is a followup to https://github.com/facebook/react-native/pull/11417 and should be merged after that one is merged.

  1. Add support for creating blobs from strings, not just other blobs
  1. Add the `File` constructor which is a superset of `Blob`
  1. Add the `FileReader` API which can be used to read blobs as strings or data url (base64)
  1. Add support for uploading and downloading blobs via `XMLHttpRequest` and `fetch`
  1. Add ability to download local files on Android so you can do `fetch(uri).then(res => res.blob())` to get a blob for a local file (iOS already supported this)

  1. Clone the repo https://github.com/expo/react-native-blob-test
  1. Change the `package.json` and update `react-native` dependency to point to this branch, then run `npm install`
  1. Run the `server.js` file with `node server.js`
  1. Open the `index.common.js` file and replace `localhost` with your computer's IP address
  1. Start the packager with `yarn start` and run the app on your device

If everything went well, all tests should pass, and you should see a screen like this:

![screen shot 2017-06-08 at 7 53 08 pm](https://user-images.githubusercontent.com/1174278/26936407-435bbce2-4c8c-11e7-9ae3-eb104e46961e.png)!

Pull to rerun all tests or tap on specific test to re-run it

  [GENERAL] [FEATURE] [Blob] - Implement blob support for XMLHttpRequest
Closes https://github.com/facebook/react-native/pull/11573

Reviewed By: shergin

Differential Revision: D6082054

Pulled By: hramos

fbshipit-source-id: cc9c174fdefdfaf6e5d9fd7b300120a01a50e8c1
2018-01-26 09:17:11 -08:00
..
RCTWebSocket.xcodeproj adds --port option to `react-native run-ios` as well as patches port … 2018-01-04 20:11:10 -08:00
__mocks__ Fix WebSocket compatibility with event-target-shim ^1.0.5 2016-04-27 12:26:23 -07:00
__tests__ Adding @email tags to most of the tests 2017-11-02 06:25:03 -07:00
RCTReconnectingWebSocket.h Make RCTPackagerConnection a singleton 2017-11-20 18:36:27 -08:00
RCTReconnectingWebSocket.m Make RCTPackagerConnection a singleton 2017-11-20 18:36:27 -08:00
RCTSRWebSocket.h Backed out changeset 183744d2415b 2016-03-15 11:49:28 -07:00
RCTSRWebSocket.m Merge RCTPackagerClient into RCTPackagerConnection 2017-05-05 08:49:28 -07:00
RCTWebSocketExecutor.h Move all header imports to "<React/..>" 2016-11-23 07:58:39 -08:00
RCTWebSocketExecutor.m adds --port option to `react-native run-ios` as well as patches port … 2018-01-04 20:11:10 -08:00
RCTWebSocketModule.h Implement Blob support for XMLHttpRequest 2018-01-26 09:17:11 -08:00
RCTWebSocketModule.m Implement Blob support for XMLHttpRequest 2018-01-26 09:17:11 -08:00
WebSocket.js Implement Blob support for XMLHttpRequest 2018-01-26 09:17:11 -08:00
WebSocketEvent.js Implement WebSocket module for Android. Fixes #2837 2015-10-07 08:36:22 -07:00
WebSocketInterceptor.js Reorganize core JS files 2016-10-11 10:14:28 -07:00