我正在尝试使用authy身份验证为我的应用程序实现2阶段身份验证。
在尝试验证authy移动应用中生成的令牌时获取UnknownHostException
。
package tes.resource;
import com.authy.*;
import com.authy.api.*;
public class SampleAuthenticator {
AuthyApiClient client=null;
public void init(){
String apiKey = "API_KEY";
String apiUrl = "http://api.authy.com";
boolean debugMode = true;
client = new AuthyApiClient(apiKey, apiUrl, debugMode);
}
public void register(String userid,String phone){
Users user=client.getUsers();
user.createUser(userid,phone, "57");
}
public boolean verify(){
Tokens tokens = client.getTokens();
Token verification = tokens.verify(27319980, "7983610");
return verification.isOk();
}
public static void main(String[] args){
SampleAuthenticator objSampleAuthenticator=new SampleAuthenticator();
objSampleAuthenticator.init();
System.out.println(objSampleAuthenticator.verify());
}
}
我创建了一个应用程序,用于测试authy是否根据authy app中生成的随机令牌验证用户。
感谢任何帮助。
答案 0 :(得分:0)
Authy开发者福音传道者。
首先,我建议您更改Authy API密钥,因为您似乎已在此问题中泄露了它。
其次,Authy API URL需要HTTPS。我的猜测是你需要改变
String apiUrl = "http://api.authy.com";
到HTTPS网址:
String apiUrl = "https://api.authy.com";
如果有帮助,请告诉我。