V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
qaqtangxiaoqi
V2EX  ›  程序员

浏览器扩展桌怎么和桌面应用通信

  •  
  •   qaqtangxiaoqi · 187 天前 · 1657 次点击
    这是一个创建于 187 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近在做浏览器扩展开发,遇到一个问题就是浏览器扩展桌怎么和桌面应用通信

    使用的是扩展内置的 fetch 没有跨域限制

    目前使用的方法是,扩展和应用约定端口,但是一个问题就是端口可能被占用,需要切换端口

    但是应用切换了端口,怎么通知浏览器扩展,浏览器扩展没有权限访问访问系统文件,

    所有没办法将端口写入文件然后扩展通过读取文件实现

    9 条回复    2024-06-22 22:34:30 +08:00
    DOLLOR
        1
    DOLLOR  
       187 天前 via Android
    两边约好,多设定几个端口号,一个被占用了就换下一个。
    molika
        3
    molika  
       187 天前 via iPhone
    老哥知道浏览器插件怎么集成 webpush 吗
    tyzandhr
        4
    tyzandhr  
       187 天前 via Android
    Safari extension 的话,是可以通过 bridge 通信的,不清楚是否是通用规范
    Znemo
        5
    Znemo  
       187 天前
    没写过扩展,不知道是否可行。我想是否可以让桌面应用启动服务后,主动打开浏览器的一个的标签页,表现是一个连接扩展的样子,其实页面中携带了本地的端口信息,然后扩展就知道了。
    vituralfuture
        6
    vituralfuture  
       187 天前 via Android
    设置一个特殊路径返回一个特殊而且固定的数据,用来辨认桌面应用,扩展从某个端口号开始不停尝试,失败了就端口号+1
    tairan2006
        7
    tairan2006  
       186 天前 via Android
    没写过扩展,但是如果支持 udp 广播的话其实挺简单的
    molika
        9
    molika  
       186 天前 via iPhone
    @fangjue 我也找到了这个文章但是 一直失败 我在研究研究
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5715 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 06:32 · PVG 14:32 · LAX 22:32 · JFK 01:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.