如何将路径从 rails api 传递到静态服务的 React 应用程序

How can I pass a path to a statically served react app from rails api

我有以下设置:

create-react-app 前端 react-router 捆绑到静态资产中。
此静态资产作为静态文件从我的 rails-api 项目的 public 文件夹中提供。 React 应用程序使用 rails-api 作为后端。
当我转到 / 路线时,会提供 React 应用程序,我可以导航我的应用程序。

如何将 /admin 之类的任何子路径传递给 react-router? 我已经有一个包罗万象的路线 config/routes.rb

get '*path', to: "application#fallback_index_html", constraints: lambda { |req|
    req.path.exclude? 'rails/active_storage'
  }

并且我可以在控制器中获取相关的子路径:

  def fallback_index_html
    path = request.parameters['path']
    render file: 'public/index.html'
  end

但我不知道如何为 React 应用提供服务 将路径传递给它。 有什么想法吗?

原来,问题是我的 ApplicationController 是从 ActionController::API 而不是 ActionController::Base 派生的。使用 Base 控制器,它就像一个魅力。 另见