Bring back trackingName
Reviewed By: yungsters Differential Revision: D3501805 fbshipit-source-id: be7e1a76c022d050542af797dda49b3cf14340bb
This commit is contained in:
parent
9b184cc0f4
commit
4d6c1e55d7
|
@ -27,7 +27,7 @@ function convertHeadersMapToArray(headers: Object): Array<Header> {
|
|||
}
|
||||
|
||||
let _requestId = 1;
|
||||
function generateRequestId() {
|
||||
function generateRequestId(): number {
|
||||
return _requestId++;
|
||||
}
|
||||
|
||||
|
@ -41,7 +41,16 @@ class RCTNetworking extends NativeEventEmitter {
|
|||
super(RCTNetworkingNative);
|
||||
}
|
||||
|
||||
sendRequest(method, url, headers, data, incrementalUpdates, timeout, callback) {
|
||||
sendRequest(
|
||||
method: ?string,
|
||||
trackingName: string,
|
||||
url: ?string,
|
||||
headers: Object,
|
||||
data: string | FormData | Object,
|
||||
incrementalUpdates: boolean,
|
||||
timeout: number,
|
||||
callback: (requestId: number) => void,
|
||||
) {
|
||||
if (typeof data === 'string') {
|
||||
data = {string: data};
|
||||
} else if (data instanceof FormData) {
|
||||
|
@ -52,6 +61,7 @@ class RCTNetworking extends NativeEventEmitter {
|
|||
}),
|
||||
};
|
||||
}
|
||||
data = {...data, trackingName};
|
||||
const requestId = generateRequestId();
|
||||
RCTNetworkingNative.sendRequest(
|
||||
method,
|
||||
|
@ -65,11 +75,11 @@ class RCTNetworking extends NativeEventEmitter {
|
|||
callback(requestId);
|
||||
}
|
||||
|
||||
abortRequest(requestId) {
|
||||
abortRequest(requestId: number) {
|
||||
RCTNetworkingNative.abortRequest(requestId);
|
||||
}
|
||||
|
||||
clearCookies(callback) {
|
||||
clearCookies(callback: number) {
|
||||
RCTNetworkingNative.clearCookies(callback);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,12 +20,22 @@ class RCTNetworking extends NativeEventEmitter {
|
|||
super(RCTNetworkingNative);
|
||||
}
|
||||
|
||||
sendRequest(method, url, headers, data, incrementalUpdates, timeout, callback) {
|
||||
sendRequest(
|
||||
method: ?string,
|
||||
trackingName: string,
|
||||
url: ?string,
|
||||
headers: Object,
|
||||
data: string | FormData | Object,
|
||||
incrementalUpdates: boolean,
|
||||
timeout: number,
|
||||
callback: (requestId: number) => void,
|
||||
) {
|
||||
if (typeof data === 'string') {
|
||||
data = {string: data};
|
||||
} else if (data instanceof FormData) {
|
||||
data = {formData: data.getParts()};
|
||||
}
|
||||
data = {...data, trackingName};
|
||||
RCTNetworkingNative.sendRequest({
|
||||
method,
|
||||
url,
|
||||
|
@ -36,11 +46,11 @@ class RCTNetworking extends NativeEventEmitter {
|
|||
}, callback);
|
||||
}
|
||||
|
||||
abortRequest(requestId) {
|
||||
abortRequest(requestId: number) {
|
||||
RCTNetworkingNative.abortRequest(requestId);
|
||||
}
|
||||
|
||||
clearCookies(callback) {
|
||||
clearCookies(callback: number) {
|
||||
console.warn('RCTNetworking.clearCookies is not supported on iOS');
|
||||
}
|
||||
}
|
||||
|
|
|
@ -106,6 +106,7 @@ class XMLHttpRequest extends EventTarget(...XHR_EVENTS) {
|
|||
_sent: boolean;
|
||||
_url: ?string = null;
|
||||
_timedOut: boolean = false;
|
||||
_trackingName: string = 'unknown';
|
||||
_incrementalEvents: boolean = false;
|
||||
|
||||
constructor() {
|
||||
|
@ -322,6 +323,14 @@ class XMLHttpRequest extends EventTarget(...XHR_EVENTS) {
|
|||
this._headers[header.toLowerCase()] = value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Custom extension for tracking origins of request.
|
||||
*/
|
||||
setTrackingName(trackingName: string): XMLHttpRequest {
|
||||
this._trackingName = trackingName;
|
||||
return this;
|
||||
}
|
||||
|
||||
open(method: string, url: string, async: ?boolean): void {
|
||||
/* Other optional arguments are not supported yet */
|
||||
if (this.readyState !== this.UNSENT) {
|
||||
|
@ -367,6 +376,7 @@ class XMLHttpRequest extends EventTarget(...XHR_EVENTS) {
|
|||
));
|
||||
RCTNetworking.sendRequest(
|
||||
method,
|
||||
this._trackingName,
|
||||
url,
|
||||
headers,
|
||||
data,
|
||||
|
|
Loading…
Reference in New Issue