このソースコードを使用して、GWT プロジェクトで U2F トークンから応答を取得しようとしています:
public class Test implements EntryPoint {
@Override
public void onModuleLoad() {
Window.alert("Alert 3:"+u2FTest());
}
public static native String u2FTest()/*-{
var respond = {rep: "Clear"};
var RegistrationData = {"challenge":"dG7vN-E440ZnJaKQ7Ynq8AemLHziJfKrBpIBi5OET_0",
"appId":"https://localhost:8443",
"version":"U2F_V2"};
$wnd.u2f.register([RegistrationData], [],
function(data) {if(data.errorCode) {
alert("U2F failed with error: " + data.errorCode);
return;
}
respond.rep=JSON.stringify(data);
alert("Alert 1: "+respond.rep);
});
alert("Alert 2: "+respond.rep);
return respond.rep;
}-*/;
}
いくつかの理由で、次のようなアラートが表示されます。
- (アラート 2) 最初に「クリア」結果
- (アラート 3) 「クリア」で
- (アラート 1) Token 応答あり
通常、トークン応答で (アラート 1) を取得し、次に 2,3 を取得する必要があります。では、トークンの応答が得られるまで実行を停止するにはどうすればよいでしょうか。ありがとうございます。