Я работаю над формой аутентификации, используя аутентификатор Google. Когда пользователь входит в систему в первый раз, генерируется QR-код. QR-код должен быть виден на моей странице. Проблема заключается в том, что QR-коды могут генерироваться только при просмотре ссылки из строки url, перенаправление с URL-адреса не генерирует код. Есть ли способ обхода проблемы?
Вот код, который можно найти в аутентификаторе Google для генерации QR-кода:
public function getUrl($user, $hostname, $secret) {
$url = sprintf("otpauth://totp/%s@%s?secret=%s", $user, $hostname, $secret);
$encoder = "https://www.google.com/chart?chs=200x200&chld=M|0&cht=qr&chl=";
$encoderURL = sprintf( "%sotpauth://totp/%s@%s%%3Fsecret=%s",$encoder, $user, $hostname, $secret);
return $encoderURL;
}
И здесь я запрашиваю URL-адрес:
<?php
$linkQR = $g->getUrl($user,$location,$secret);
?>
<a href="<?php echo $linkQR;?>"><img style="border: 0; padding:10px" src="<?php echo $linkQR;?>"/></a>
Я нашел решение для своей проблемы. используя https://chart.googleapis.com/ вместо https://www.google.com/ в URL-адресе для его создания. Теперь мои коды генерируются при загрузке первой страницы.