gpt4 book ai didi

node.js - electron - 发送带有修改的 Referer header 的 GET 请求

转载 作者:行者123 更新时间:2023-12-03 12:22:57 26 4
gpt4 key购买 nike

在我的 Electron 应用程序中,我需要发送一个请求,其中包含修改后的 Referer header 。执行此操作的最佳方法是什么?

我尝试使用内置浏览器 fetch api,但它无法设置 Referer header 。

const json = await fetch(api_url, {
referrer: referer_url,
headers: {
"Referer": referer_url,
},
mode: "no-cors"
}).then(r => r.json());

Electron v3.0.6

最佳答案

你需要在 Electron 中处理所有的获取请求。例如:

文件background.js(用于 Electron ):

  const filter = {
urls: ['https://*./*', 'http://*./*'],
};
session.defaultSession.webRequest.onBeforeSendHeaders(filter, (details, callback) => {
if (details.url.startsWith(process.env.VUE_APP_API_SEFVER)) {
details.requestHeaders['Origin'] = 'my-tools';
} else {
const url = new URL(details.url);
details.requestHeaders['Origin'] = url.origin;
if (!details.url.includes('//localhost')
&& details.requestHeaders['Referer']
&& details.requestHeaders['Referer'].includes('//localhost')) {
details.requestHeaders['Referer'] = details.url;
}
}
callback({ cancel: false, requestHeaders: details.requestHeaders });
});

关于node.js - electron - 发送带有修改的 Referer header 的 GET 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53018256/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com