我做了一个浏览器,但是有个致命缺点

24 天前
 yunnysunny

前些天在调试 m3u 的地址播放的功能,发现网上公开的一些 m3u 列表使用 video 标签播放时候,会有跨域的问题,单独配置浏览器支持跨域又比较啰嗦。所以我想着是不是可以用 electron 直接做一个简单的浏览器出来,直接跳过跨域限制。

有了这么一个简单的想法后,我就开始动手了,做出来之后,确实实现了自己想要的效果。但是看着略微有些简陋,传统浏览器都是有 tab 页支持的,所以我又给他加了 tab 页的功能。想着如果能支持收藏网页就更好了,所以我又顺手加了一下收藏功能。

随着顺手的事情越来越多,我也越来越多的接触到了更多 electron 的基础知识,然后我发现打包完之后的程序,运行起来速度很卡,但是我本地调试的时候运行的飞快。后来经过多方查证,发现是本地运行所在目录的上级是我程序代码的集散地,为了保证电脑运行速度,我将其添加到杀毒软件的排除名单中了,而打包后安装的程序没有在这个名单中,杀毒软件在检测到没有使用合法证书签名的应用时,会单独将其添加到沙箱中观察,观察安全后,再放行,所以就引起了卡顿现象。

虽然网上有 Let's Encrypt 等免费 HTTPS 证书厂家,但是对于应用签名证书是没有免费版的,我想知道大家开源出来的 Windows 应用,都是如何做签名的,自己花钱购买证书吗?

附录一下刚才提交的开源项目来献丑一下: https://github.com/whyun-pages/my-browser

3545 次点击
所在节点    程序员
15 条回复
gaifanking
24 天前
我上次用的个人/小团队开发的浏览器,还是“世界之窗”。建议别耗费精力了,整点其他有用的吧
ruanimal
24 天前
仓库建议放点截图
ykrank
24 天前
跨域是安全问题,除非第一方网站,不然不敢关
A1exL
24 天前
https://chromewebstore.google.com/detail/allow-cors-access-control/lhobafahddgcelffkeicbaginigeejlf

这个插件应该还能用吧……?我以前就是用这个解决 CORS 问题的
Chicagoake
24 天前
@gaifanking 做得真好,小学时候家里电脑配置差用世界之窗比其他浏览器流畅很多,被收购也算是有个好归宿了。
honkew
24 天前
关于跨域,这样启动 chrome 就可以了

"C:\Program Files\Google\Chrome\Application\chrome.exe" --disable-web-security --user-data-dir=D:\chrome
abolast
24 天前
允许跨域啊,我用的浏览器插件是 modheader ,对于运维来说免费刚刚好用。
HTravel
24 天前
做事之前,先想想有没有价值吧。

跨域是浏览器为了安全施加的限制。如果放在观看直播视频这个特定领域的话,我用 IINA 、PotPlayer 、VLC 观看 m3u 直播不是功能更完善嘛,而且播放器本身就不会施加跨域限制
cat
24 天前
OP 你不觉得本末倒置了吗……
在浏览器里打开 m3u 是为了方便,如果要专门安装你的浏览器,那为啥不直接用本地播放器?
skiy
24 天前
直接用 mpv 打开 m3u8
Kirkcong
24 天前
5202 年了,为什么还在造 20 年的轮子
Xheldon
24 天前
直接说答案:Windows 的签名没有免费的,而且非常贵,得好几千;
Mac 的签名只需要一个开发者账号就好了。
weijancc
24 天前
如果只是为了开发用, 完全没必要, 油猴高级设置中有个允许跨域请求, 勾选后就直接可以跳过 cors 了
natsukage
24 天前
单独配置浏览器支持跨域又比较啰嗦。
所以我想着是不是可以用 electron 直接做一个简单的浏览器出来

我把脑细胞烧干了都没想出来这两句话的逻辑关系
bthulu
23 天前
我还以为你把 chrome 干掉了自己写了个浏览器内核

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1152331

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX