You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

公司防火墙下Win10运行PubNub代码遇UNABLE_TO_GET_ISSUER_CERT_LOCALLY错误求助

解决Windows 10下PubNub的UNABLE_TO_GET_ISSUER_CERT_LOCALLY错误(无法关闭防火墙场景)

我之前帮同事处理过几乎一模一样的问题,公司电脑的防火墙和证书策略确实让人头疼——尤其是没法自己关防火墙的时候。针对这个PubNub的证书错误,给你几个靠谱的解决方向,都是不用动防火墙也能试的:

1. 手动导入PubNub的根证书到Windows证书存储

这是最常见的原因:公司电脑没预装PubNub依赖的根CA证书,导致系统没法验证PubNub服务器的证书合法性。步骤很清晰:

  • 先获取根证书:打开浏览器访问PubNub的API域名(比如ps.pndsn.com),点击地址栏的锁图标→「证书」→「证书路径」,找到最顶层的根证书(一般是DigiCert Global Root CA),选择「导出」,保存为Base64编码的CER格式文件。
  • 打开证书管理器:按下Win+R,输入certmgr.msc回车,找到「受信任的根证书颁发机构」→「证书」文件夹。
  • 导入证书:右键该文件夹,选择「所有任务」→「导入」,跟着向导完成刚才导出的CER文件导入。
  • 重启你的代码运行环境(比如Node.js、Python解释器),再试运行PubNub代码。

2. 临时禁用证书校验(仅限测试场景!)

如果只是临时测试,不想折腾证书导入,可以在代码里临时关闭证书校验——但千万注意:这是不安全的操作,绝对不能用在生产环境。举两个常用SDK的例子:

  • JavaScript SDK:
    const pubnub = new PubNub({
      publishKey: '你的发布密钥',
      subscribeKey: '你的订阅密钥',
      ssl: true,
      rejectUnauthorized: false // 关闭证书校验
    });
    
  • Python SDK:
    from pubnub.pubnub import PubNub
    from pubnub.config import PNConfiguration
    
    pnconfig = PNConfiguration()
    pnconfig.publish_key = '你的发布密钥'
    pnconfig.subscribe_key = '你的订阅密钥'
    pnconfig.ssl = True
    pnconfig.verify_ssl = False # 关闭证书校验
    
    pubnub = PubNub(pnconfig)
    

3. 检查公司代理的证书拦截问题

很多公司会用代理服务器拦截HTTPS流量,替换成公司自己的证书,这也会导致PubNub的证书校验失败。这种情况得找IT部门要公司代理的根CA证书,然后按照第一点的步骤,把这个根证书导入到「受信任的根证书颁发机构」里,之后PubNub的请求就能通过代理的证书校验了。

4. 升级PubNub SDK到最新稳定版

旧版本的PubNub SDK可能依赖了已经过期的证书,或者证书链配置有问题。试试把你用的SDK升级到最新版:

  • Node.js环境:运行 npm update pubnub
  • Python环境:运行 pip install --upgrade pubnub

内容的提问来源于stack exchange,提问作者Sagar Deshpande

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 09:07:14