0
我在webapp上实现了facebook登录。在Parse上注册Facebook用户
我收到访问令牌,我知道电子邮件,一切都很好。 但我无法在Parse数据库上注册用户。
我做了一个java bean,它有userId,userName,userEmail和token。 我把这些放在一个表格中,应该发送给Parse。
/*--------------------------FORM FACEBOOK ----------------------------*/
final TextField<String> userId = new TextField<>("userId");
final TextField<String> userName = new TextField<>("userName");
final TextField<String> userEmail = new TextField<>("userEmail");
final TextField<String> token = new TextField<>("token");
model = new CompoundPropertyModel<>(new FacebookLoginForm());
form = new Form<FacebookLoginForm>("tokenForm", model)
{
@Override
protected void onSubmit()
{
ParseUser pu = new ParseUser();
pu.setUsername(model.getObject().getUserName());
pu.setEmail(model.getObject().getUserEmail());
/*METHOD FOR PARSE*/
curlParse(model.getObject().getToken(), model.getObject().getUserId());
}
};
add(form);
form.add(userId);
form.add(token);
form.add(userName);
form.add(userEmail);
解析curlParse():
public void curlParse(String token, String id)
{
try
{ Date exp = new Date();
exp.setTime(exp.getTime()+7200000);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd'T'HH:MM:ss.SSS'Z'"); /*2012-02-28T23:49:36.353Z Data format*/
String sExp = sdf.format(exp);
Request.Post("https://api.parse.com/1/users")
.addHeader("X-Custom-header", "stuff")
.bodyString(
"{"
+ " \"authData\": { "
+ " \"facebook\": {"
+ " \"id\": \""+ id +"\","
+ "\"access_token\": \""+ token +"\","
+ " \"expiration_date\": \""+sExp+"\""
+ " }"
+ "}"
+ "}", ContentType.APPLICATION_JSON
)
.execute().returnContent().asString();
} catch (IOException ex)
{
Logger.getLogger(Login2.class.getName()).log(Level.SEVERE, null, ex);
}
}
因为我需要一个绝对路径,通过Facebook登录的用户,我不能使用调试和有没有日志(Tomcat)的文件中的任何异常。 我试图从cURL翻译到Java,但它似乎并没有工作。 我的错误在哪里?
谢谢。