【问题标题】:Main Rails app cannot connect to secondary app when using USB-connected mobile Safari client使用 USB 连接的移动 Safari 客户端时,主要 Rails 应用程序无法连接到辅助应用程序
【发布时间】:2018-02-13 21:05:09
【问题描述】:

主应用程序在 3002 端口上运行,第二个应用程序在端口 3000 上运行。从浏览器(经过测试的 Chrome、Firefox、Safari)使用主应用程序时,一切正常,包括在 iframe 中安装第二个应用程序.

我遇到的问题是,当我在 iPhone 的 Safari 上跳转到调试移动版本时,主应用程序无法加载支持应用程序并显示错误消息“加载资源失败:无法连接到服务器”。

这两个应用程序都是 Rails 应用程序,辅助应用程序运行在 WEBrick HTTP 服务器上。在辅助应用程序中,我在 application.rb 中添加了以下几行以获得 CORS 支持,但没有成功:

    config.action_dispatch.default_headers.merge!({
      'Access-Control-Allow-Origin' => '*',
      'Access-Control-Request-Method' => '*'
    })

另一个难题:当我将辅​​助应用程序 URL 切换到部署在 Heroku 中的生产应用程序 URL 时,主应用程序成功地将其加载到 iFrame 中。所以——只有当辅助应用在本地运行时才会出现问题。

提前欣赏任何指针。

【问题讨论】:

    标签: ruby-on-rails iphone mobile safari


    【解决方案1】:

    不久前了解了这一点。它解释了原因,但没有提供修复。

    '您必须从不在您网络中的另一个网络访问它。因为您的服务器在 IP 上运行,并且您的访问机器也连接到同一个 IP [因为端口转发]。所以它不能在同一个网络中工作。您必须从不同的 WAN IP 网络访问它。'

    cant do port forwarding ro my webrick server to access it from the net!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-04
      • 1970-01-01
      • 2022-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多