如何从React Route强制执行基于浏览器导航的GET?

时间:2017-04-13 21:09:01

标签: react-router passport.js react-router-redux koa2 koa-passport

我的React应用程序中有一个登录页面,用户可以在基于Koa的API服务器上使用passport.js通过社交网络OAuth2服务选择本地登录或登录。

最初,我试图通过ajax调用后端,但似乎OAuth2服务器不允许我这样做,给我一个CORS错误,即使有代理,所以我试图简单地放置一个{{ 1}}围绕社交登录按钮,Link属性到我的API后端网址,如下所示:

to

问题是,当我点击按钮时,路由器拦截链接并尝试在该路径上呈现组件并设置浏览器位置(在导航栏中),但实际上并不会导致浏览器执行GET服务器上的资源 - 这导致我的通用404容器被渲染。我也试图使用普通的锚元素,但由于上述原因,它失败了。

所以,我需要知道的是如何强制React Router忽略某个路径并允许浏览器对资源执行GET?

1 个答案:

答案 0 :(得分:0)

只需使用Link标记重写您的a代码即可。如下所示

<a href="/auth/google/signin"> ... </a>