应用引擎 - /_ah/openid_verify 上间歇性出现500错误

34

使用Google openid登录我的应用程序时,我遇到了间歇性的错误。

他们被发送到的链接是http://www.example.com/_ah/login_redir?claimid=www.google.com/accounts/o8/id&continue=http://www.example.com/login2?returl%253Dhttp%25253A%25252F%25252Fwww.example.com%25252Ftest-list-8

当他们授权我的应用程序时,有时会出现500错误的URL:http://www.example.com/_ah/openid_verify?continue=http://www.example.com/login2?returl%3Dhttp%253A%252F%252Fwww.example.com%252Ftest-list-8%2523additem&gx.rp_st=AEp4C1sATcZr10BWADPx0hXZOeG49Vdr6GjYqvx83JXTTXjEFdqS8KaHIfZD3wmwTNl-wu8r7DMwoQMvWLpqgoV8RtAUigMMjw&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.mode=id_res&openid.op_endpoint=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fud&openid.response_nonce=2011-12-06T20%3A00%3A53ZGU1ZOot7AJ4DGg&openid.return_to=http%3A%2F%2Fwww.example.com%2F_ah%2Fopenid_verify%3Fcontinue%3Dhttp%3A%2F%2Fwww.example.com%2Flogin2%3Freturl%253Dhttp%25253A%25252F%25252Fwww.example.com%25252Ftest-list-8%252523additem%26gx.rp_st%3DAEp4C1sATcZr10BWADPx0hXZOeG49Vdr6GjYqvx83JXTTXjEFdqS8KaHIfZD3wmwTNl-wu8r7DMwoQMvWLpqgoV8RtAUigMMjw&openid.assoc_handle=AMlYA9W4FErBlE7i17Z-YVirs2a0eP_LEjoDRJDVgEq9FhOSKt8xq4HT&openid.signed=op_endpoint%2Cclaimed_id%2Cidentity%2Creturn_to%2Cresponse_nonce%2Cassoc_handle%2Cns.ext1%2Cext1.mode%2Cext1.type.attr0%2Cext1.value.attr0%2Cext1.type.auto2%2Cext1.value.auto2&openid.sig=b7TBbUBO0mgF26qCpAjkS0AYeX8%3D&openid.identity=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fid%3Fid%3DAItOawkBkv0HezgbtJVspVv8hxIBizNbHP_4t_M&openid.claimed_id=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fid%3Fid%3DAItOawkBkv0HezgbtJVspVv8hxIBizNbHP_4t_M&openid.ns.ext1=http%3A%2F%2Fopenid.net%2Fsrv%2Fax%2F1.0&openid.ext1.mode=fetch_response&openid.ext1.type.attr0=http%3A%2F%2Faxschema.org%2Fcontact%2Femail&openid.ext1.value.attr0=myemail%40gmail.com&openid.ext1.type.auto2=http%3A%2F%2Fwww.google.com%2Faccounts%2Fapi%2Ffederated-login%2Fid&openid.ext1.value.auto2=105848731220363187343

我的日志中甚至没有显示500错误。这似乎在5-10%的登录时发生。


4
我也遇到了这个问题,我想这可能是联合身份标记为实验性的原因。我正在尝试使用Spring Security... - stivlo
4
建议使用更好的 Google Identity Toolkit:http://code.google.com/apis/identitytoolkit/ - Jose Montes de Oca
@PéterVarga 没有配额拒绝。 - Kyle
我也是。可以在谷歌和雅虎上使用,但不能在StackExchange上使用。 - antony.trupe
3个回答

2

Error 500的意思是- 页面未找到/ID/密码丢失。

为了解决这个问题,您需要再次检查openID或者只是为了测试目的而创建一个Google ID。


1
在您的service()方法中,通过将doGet()包装起来来捕获并输出异常,例如:
.
.
.
try {
    doGet(request,response);
} catch (Throwable e) {
    writer.println("<pre>");
    e.printStackTrace(writer);
    writer.println("</pre>");
}
.
.
.

1
我遇到了类似的错误,据我所知,该请求甚至从未进入我的应用程序,因此无法从我们这边进行日志记录。 - Ibrahim Arief


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接