Added proxy support to FirefoxStrategy

This commit is contained in:
Andrew Bastin
2020-01-17 13:28:04 -05:00
parent 2a51ec6d9f
commit 951266e529

View File

@@ -1,5 +1,22 @@
const firefoxStrategy = (req, _store) => new Promise((resolve, reject) => {
const firefoxWithProxy = (req, store) => new Promise((resolve, reject) => {
const eventListener = (event) => {
window.removeEventListener("firefoxExtSendRequestComplete", event);
if (event.detail.error) reject(JSON.parse(event.detail.error));
else resolve(JSON.parse(event.detail.response));
};
window.addEventListener("firefoxExtSendRequestComplete", eventListener);
window.firefoxExtSendRequest({
method: "post",
url: store.state.postwoman.settings.PROXY_URL || "https://postwoman.apollotv.xyz/",
data: req
});
});
const firefoxWithoutProxy = (req, _store) => new Promise((resolve, reject) => {
const eventListener = (event) => {
window.removeEventListener("firefoxExtSendRequestComplete", eventListener);
@@ -12,4 +29,10 @@ const firefoxStrategy = (req, _store) => new Promise((resolve, reject) => {
window.firefoxExtSendRequest(req);
});
const firefoxStrategy = (req, store) => {
if (store.state.postwoman.settings.PROXY_ENABLED)
return firefoxWithProxy(req, store);
else return firefoxWithoutProxy(req, store);
}
export default firefoxStrategy;