Skip to content

Commit

Permalink
fix(http): Make proxy work with Request objects (#7348)
Browse files Browse the repository at this point in the history
  • Loading branch information
jcesarmobile committed Mar 15, 2024
1 parent 0c8d69b commit 7e68725
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 13 deletions.
10 changes: 7 additions & 3 deletions android/capacitor/src/main/assets/native-bridge.js
Original file line number Diff line number Diff line change
Expand Up @@ -500,9 +500,13 @@ var nativeBridge = (function (exports) {
options.method.toLocaleUpperCase() === 'HEAD' ||
options.method.toLocaleUpperCase() === 'OPTIONS' ||
options.method.toLocaleUpperCase() === 'TRACE') {
const modifiedResource = createProxyUrl(resource.toString(), win);
const response = await win.CapacitorWebFetch(modifiedResource, options);
return response;
if (typeof resource === 'string') {
return await win.CapacitorWebFetch(createProxyUrl(resource, win), options);
}
else if (resource instanceof Request) {
const modifiedRequest = new Request(createProxyUrl(resource.url, win), resource);
return await win.CapacitorWebFetch(modifiedRequest, options);
}
}
const tag = `CapacitorHttp fetch ${Date.now()} ${resource}`;
console.time(tag);
Expand Down
19 changes: 12 additions & 7 deletions core/native-bridge.ts
Original file line number Diff line number Diff line change
Expand Up @@ -554,13 +554,18 @@ const initBridge = (w: any): void => {
options.method.toLocaleUpperCase() === 'OPTIONS' ||
options.method.toLocaleUpperCase() === 'TRACE'
) {
const modifiedResource = createProxyUrl(resource.toString(), win);
const response = await win.CapacitorWebFetch(
modifiedResource,
options,
);

return response;
if (typeof resource === 'string') {
return await win.CapacitorWebFetch(
createProxyUrl(resource, win),
options,
);
} else if (resource instanceof Request) {
const modifiedRequest = new Request(
createProxyUrl(resource.url, win),
resource,
);
return await win.CapacitorWebFetch(modifiedRequest, options);
}
}

const tag = `CapacitorHttp fetch ${Date.now()} ${resource}`;
Expand Down
10 changes: 7 additions & 3 deletions ios/Capacitor/Capacitor/assets/native-bridge.js
Original file line number Diff line number Diff line change
Expand Up @@ -500,9 +500,13 @@ var nativeBridge = (function (exports) {
options.method.toLocaleUpperCase() === 'HEAD' ||
options.method.toLocaleUpperCase() === 'OPTIONS' ||
options.method.toLocaleUpperCase() === 'TRACE') {
const modifiedResource = createProxyUrl(resource.toString(), win);
const response = await win.CapacitorWebFetch(modifiedResource, options);
return response;
if (typeof resource === 'string') {
return await win.CapacitorWebFetch(createProxyUrl(resource, win), options);
}
else if (resource instanceof Request) {
const modifiedRequest = new Request(createProxyUrl(resource.url, win), resource);
return await win.CapacitorWebFetch(modifiedRequest, options);
}
}
const tag = `CapacitorHttp fetch ${Date.now()} ${resource}`;
console.time(tag);
Expand Down

0 comments on commit 7e68725

Please sign in to comment.