我目前正在尝试为我的网站编写程序,但我正在尝试自动登录到mojang,以便他们可以更快地迁移,并确保他们的MC帐户是安全的。但是,当我尝试自动登录Mojang进行迁移时,它会给出错误:身份验证失败。
我知道其他人尝试了这个并且成功但是这个是用JAVA编写的,我想用HTML制作它。
<form action="https://account.mojang.com/migrate/check" method=POST target=_blank>
<input type="text" name="mcusername">
<input type="text" name="password">
<?php
echo '<input type="hidden" name="authenticityToken" value='.$token.'>';
?>
<input type=submit value="Migrate Account">
</form>
我尝试使用我从mojang.com/migrate使用此代码抓取的令牌:
$file = file_get_contents('https://account.mojang.com/migrate');
function get_string_between($string, $start, $end){
$string = " ".$string;
$ini = strpos($string,$start);
if ($ini == 0) return "";
$ini += strlen($start);
$len = strpos($string,$end,$ini) - $ini;
return substr($string,$ini,$len);
}
$fullstring = $file;
$fullstring = str_replace("/migrate/check", "https://account.mojang.com/migrate/check", $fullstring);
$token = get_string_between($fullstring, '<input type="hidden" name="authenticityToken" value="', '">');
但是,当我按下时会返回错误:迁移帐户。我想我需要用cookies或Auth令牌做些什么。如果你们有任何想法..请告诉我
答案 0 :(得分:1)
您使用脚本检索的令牌是为您的服务器生成的,而不是为用户提交html表单生成的。您必须使用Javascript获取令牌。
BUT
MLHttpRequest cannot load https://account.mojang.com/migrate. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://yourdomain.com' is therefore not allowed access.
所以我不认为你能用html / php验证客户端。