如何在同一主机上设置React和Flask但路径不同?

时间:2017-07-03 19:37:42

标签: apache reactjs flask routing

我有一个react应用程序,它使用react-router和redux,我一直在react-dev-server上通过localhost:3000开发。它与Flask服务器上通过localhost:5000开发的Flask后端连接,专门用于处理API调用和各种后端自动化任务。

我想要做的就是使用相同的主机名将这两台服务器移到Apache上,Flask将处理对myhostname.com/api/v1/{request}的所有请求,而React将处​​理其他所有请求。

我相信这是可能的,但我不确定如何处理它。我知道我可以将我的React应用程序捆绑起来并通过Flask提供服务,这里找到了一个很好的解决方案Flask and React routing,但是如果可能的话,我希望这些组件在物理上彼此分离。 / p>

我可以通过Apache独立运行前端和后端,没有问题,但是当一起运行时,所有请求都由React处理。

不确定这是否真的是一般的最佳方法,愿意接受更好的方法来实现这样的建议。但我认为解决方案将在Apache中。我还没有弄清楚如何更专门地为我指导流量。

React将请求捕获到/ api,并从此块重定向它,这是我借用的。

@connect(store => {
    return { user: store.user }
})
class PrivateRoute extends React.Component {
    render() {
       const { user, component, ...rest } = this.props;

        return (
            <Route {...rest} render={props => (
                user.isAuthenticated 
                ? React.createElement(component, props)
                : (<Redirect to={{
                       pathname: '/login', 
                       state: { from: props.location }}}/>)
            )}/>
        );
    }
}

0 个答案:

没有答案