Я использую вход OpenId в приложении CakePHP. В какой-то момент мне нужно перенаправить на другое действие, сохраняя при этом информацию о личности OpenId, который сам по себе является URL (с параметрами GET), напримерПередача URL-адреса в качестве параметра URL-адреса
https://www.google.com/accounts/o8/id?id=31g2iy321i3y1idh43q7tyYgdsjhd863Es
Как сделать Я передаю эти данные? Первая попытка будет
function openid() {
...
$this->redirect(array('controller' => 'users', 'action' => 'openid_create', $openid));
}
но очевидная проблема заключается в том, что это полностью портит путь CakePHP разбирает параметры URL.
я должен был бы сделать одно из следующих действий:
1) кодировать URL в CakePHP дружественно для передачи его, и его расшифровке после этого, или
2) передать URL как параметр POST
, но я не знаю, как это сделать.
EDIT: В ответ на комментарии я должен быть более понятным. Я использую компонент OpenId, и у меня есть работающая реализация OpenId. Мне нужно связать OpenId с существующей пользовательской системой. Когда новый пользователь регистрируется через OpenId, я запрашиваю более подробную информацию, а затем создаю нового пользователя с этими данными. Проблема в том, что я должен сохранить URL OpenId на протяжении всего процесса.
Вы знаете, это уже существует как компонент для CakePHP. Если вы не хотите его использовать, вы всегда можете скачать его и пройти через код, чтобы получить представление. –