jc3213 / download_with_aria2

The browser extenson for aria2 download utility via JSON-RPC
https://jc3213.github.io/download_with_aria2/
GNU Lesser General Public License v2.1
64 stars 9 forks source link

add Custom Header option to popup window #97

Closed detiam closed 3 months ago

detiam commented 3 months ago

Fix #96 加个了 自定义请求头 的框,现在打开 启用下载弹窗 也能传递请求头了

jc3213 commented 3 months ago

这个其实有更简单的修复方法,就像#96 里说的那样,还更安全。你添加的东西跟我这边冲突蛮大的,我参考你的Pull Request做了自己的修改。

aria2Global = settings.disposition({...jsonrpc, ...options});
aria2Global.header = options.header;
jc3213 commented 3 months ago

我观察了这个界面感觉怪怪的,我始终认为相对更专业的UI不应该直接开放给所有用户,而且提取了Cookie后,因为字符串太长,会导致根本无法正确的显示在这个框里。我个人感觉还不如做个表格单独展示出来,但不应该让用户可以修改。

detiam commented 3 months ago

而且提取了Cookie后,因为字符串太长,会导致根本无法正确的显示在这个框里。

让那个框不自动换行就好了吧。

我个人感觉还不如做个表格单独展示出来,但不应该让用户可以修改。

好吧。

jc3213 commented 3 months ago

做个表单显示,通过<h4>来确定标题比如Cookie,然后后续值那=;分割,得到下面的列表左name,右value

不过获取cookies从最早的根据referer,到后面根据下载url,已经解决了基本可能出现的问题了。

如果要彻底模拟浏览器的行为,必须根据其实根据webRequest监听onBeforeRequest发出的所有requestHeaders,然后转换成options.header。

后者不知道能不能解决,那些会检查单个IP只能下载一次的网站。

关键这个options.header,对大多数用户来说是无用信息,显示出来也没任何意义,无意修改了反而还会影响下载。所以我个人的见解还是没必要展示出来。