我已经在路线上设置了该网址
$route['usuario/login_no_pass_no_data/(:any)']['GET'] = 'Public/Login/no_pass_no_data/$1';
但是当我尝试使用这样的网址发出请求
我收到此错误
The requested URL /usuario/login_no_pass_no_data/0SnjpV8gDCygjV+U0kwk861UmVEa9clv47SPv0oICbw4s5aQTvhXLpUc0nSWe7eExP5oQFHat1/gZXXu5TDR59rWMdaUotZKV2EOdeNh6xQ= was not found on this server.
这是功能
public function no_pass_no_data($encoded_email){
//$encoded_email='0SnjpV8gDCygjV%2BU0kwk861UmVEa9clv47SPv0oICbw4s5aQTvhXLpUc0nSWe7eExP5oQFHat1%2FgZXXu5TDR59rWMdaUotZKV2EOdeNh6xQ%3D';
$encoder = $this->di->find('ssl_cipher');
$storage = $this->di->find('storage');
$salt = $storage->executeSQL("select text from translations where entity='Salt'", \PDO::FETCH_ASSOC)[0]['text'];
$decoded_email = $encoder->decode(urldecode($encoded_email), $salt);
$client = $storage->findOneBy('Client',array('email'=>$decoded_email));
$this->login_user($client->getId());
redirect('usuario/datos','location');
}
如果我取消注释$encoded_email
,则一切正常,因此存在无法识别网址的问题,但我不知道是什么问题