Kohana 3.2-получить реферер URI
Я пытаюсь получить URI реферера в Kohana 3.2, используя следующий код:
$referrer = $this->request->referrer();
var_dump($referrer);
Однако функция возвращает NULL, я ожидаю, что она вернет страницу, которую я оставил, чтобы добраться до этого.
Вот как это должно работать... и если да, то что я упускаю или делаю неправильно?
Это выполняется в контроллере.
Документация здесь: http://kohanaframework.org/3.2/guide/api/Request#referrer
1 ответ:
Проблема, с которой я столкнулся, была вызвана тем, как настроена моя система Kohana. В основном у меня есть routeHandler в середине моей системы, которая контролирует маршруты пользователей. В этом сценарии был сгенерирован и затем выполнен новый запрос.
То, что происходило, было при создании нового объекта запроса, в который не был добавлен uri реферера. Я добавил следующий код, и теперь я могу получить ссылающийся uri от контроллера в конце маршрута процесс.
$referrer = $this->request->referrer(); $request = new Request($uri); $request->referrer($referrer); echo $request->execute() ->send_headers() ->body();
Альтернативно более чистое нативное решение, предложенное atma , является следующим:
Request::initial()->referrer()