Я работаю над функцией сброса пароля, которая соответствует хэшам, чтобы пользователь мог выполнить сброс. Единственная проблема заключается в том, что хэш, который был создан, не может быть передан через URL, не нарушая страницу. Например, мой хэш-это:Как отправить зашифрованный хеш по URL-адресу в CakePHP 3?
http://localhost/users/changeResetPassword/e0b4ab1d2cdc5742c7b5f72ef6c2935dadfe458dc275b7419d9f1ac66461aa20%0F5%3A%C6%5C%26%2A%E4%D5%ACA%94%ADV%BF%EB%CAz%97O%1F%7D%F0h~%E3-.%FF%B4z%5E%1AQ%B8%8Ca%BC500%2A%EC%7B%FA%AF8%E3%2A%7F%BA%A4y%03%AE%29%94%09%26%9E%29e%E5%DEn%1At%C1%EC%F7%D4x%EAvlA%BE%5B%0D%CF
Все эти%, кажется, сломать эту страницу, потому что я получаю эту ошибку:
Object not found!
The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again.
Если я забрать все, вплоть до последней% и попробовать он снова, страница загружается отлично. Это только некоторые символы в URL, кажется, ошибка все из:
http://localhost/users/changeResetPassword/e0b4ab1d2cdc5742c7b5f72ef6c2935dadfe458dc275b7419d9f1ac66461aa20
Это загружает нормально, так что я знаю, что это просто проблема URL. Есть идеи?
Это точно ответ. Ты жжешь. :) – cg22
Хотя использование base64 является подходящим решением, вы должны знать, что кодировка base64 может создавать символы, которые являются проблематичными в URL-адресах, то есть '+', '=' и '/', вам нужно убедиться, что они кодируются URL или заменяются заменителями, см., например, ** http: //stackoverflow.com/questions/1374753/passing-base64-encoded-strings-in-url** @ cg22 – ndm