从 Node Js 重定向到 Spring 引导服务并发送回响应

Posted

技术标签:

【中文标题】从 Node Js 重定向到 Spring 引导服务并发送回响应【英文标题】:Redirect from Node Js to Spring boot service and send back responce 【发布时间】:2019-07-20 08:22:05 【问题描述】:

我有一个在 localhost:4200 上运行的 Angular UI,在 localhost:4000 上运行的节点服务器和一个在 localhost:8080 上运行的 Spring Boot 服务。

我想从 angualr 到 node 和从 node 到重定向到 Spring Boot 服务,该服务具有 Web UI,用户在其中确认和响应将给予 node 和 node 到 angualr。

问题是 spring boot 服务不仅仅是 REST 服务。用户将在 web ui 上提供输入。那么如何通过跟踪节点和角度来重定向到spring服务的UI。

【问题讨论】:

【参考方案1】:

由于涉及两个不同的站点,您不能简单地进行后端到后端 API 调用并重定向一次。您很可能必须执行以下操作 -

    用户导航到在 NodeJs 服务器后面运行的第一个 webapp(比如 webapp1),然后用户可能会对 Node 进行一些 API 调用。

    一旦 NodeJs 服务器处理了请求,它将向 webapp1 发送重定向响应,然后浏览器会将用户重定向到 webapp2。 (您可能需要添加一个查询参数,例如 token 以使用第二个应用验证重定向的用户)

所以重定向响应应该是这样的

HTTP/1.1 301 Moved Permanently
Location: https://webapp2.com/?token=12345
    这应该加载与 Spring 服务对话的第二个 web 应用程序。现在,当处理完成后,您需要执行与步骤 2 相同的操作,以将用户返回到 webapp1
HTTP/1.1 301 Moved Permanently
Location: https://webapp1.com/?token=12345

【讨论】:

感谢这个很好的澄清。但这里的问题是如何从可能是 UI 和从 spring 到节点重定向到 spring。 @sam 很高兴为您提供帮助。如果您认为这可以解决问题,请接受它作为答案。

以上是关于从 Node Js 重定向到 Spring 引导服务并发送回响应的主要内容,如果未能解决你的问题,请参考以下文章

从回调函数内部使用“纯”Node.js 进行重定向

node.js 请求获取重定向链

Node.js 根据使用的域名重定向到一个 ip:port

提交表单后Node JS重定向

如何在 Node JS 上将 http 重定向到 https

node.js 中的 Http 请求重定向和 cookie 处理