Laravel控制器充当代理

时间:2018-10-22 14:45:50

标签: php laravel

在我的情况下,我有一个受信任的服务器1与一个受信任的服务器2通信。

需要充当中间人来过滤与服务器2的某种通信:

Server1-> [Laravel]-> Server 2。

除了“重新创建”请求之外,控制器内部是否有一种简单的方法可以“复制” Server1请求(标头和内容)并将其执行到服务器2?

1 个答案:

答案 0 :(得分:0)

深入研究之后,有很多可能的解决方案:

Laravel使用Symfony Httpfoundation组件和Request。

Symfony\Component\HttpFoundation;

因此,该对象有2种可能的方式来实现我一直在寻找的东西

1)通过构造函数创建一个新请求

2)从全局变量创建它:

Request::createFromGlobals()

如果使用Illuminate \ Request,则还有:

2b)2)的封装

Request::capture() 

3)通过以下方式从现有请求中创建

Request::createFrom($from, $to=null)

4)从现有的SymfonyRequest obj

创建它
Request::createFromBase(SymfonyRequest $request)