无法使用带有双腿身份验证的GAE Java API更新/删除/检索日历事件

无法使用带有双腿身份验证的GAE Java API更新/删除/检索日历事件,java,google-app-engine,google-calendar-api,Java,Google App Engine,Google Calendar Api,您好,我正在使用GAE Java编写一个连接器工具,它可以添加、更新、删除和 检索日历事件。我正在对同一事件使用两段式身份验证。我能够使用2段式身份验证成功添加新事件,但无法 使用相同的方法更新、删除或检索事件 当我尝试对日历事件执行更新/删除/检索操作时,它给出以下错误 com.google.gdata.util.AuthenticationException:确定 <HTML> <HEAD> <TITLE>Token invalid - Invalid A

您好,我正在使用GAE Java编写一个连接器工具,它可以添加、更新、删除和 检索日历事件。我正在对同一事件使用两段式身份验证。我能够使用2段式身份验证成功添加新事件,但无法 使用相同的方法更新、删除或检索事件

当我尝试对日历事件执行更新/删除/检索操作时,它给出以下错误

com.google.gdata.util.AuthenticationException:确定

<HTML>
<HEAD>
<TITLE>Token invalid - Invalid AuthSub token.</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>Token invalid - Invalid AuthSub token.</H1>
<H2>Error 401</H2>
</BODY>
</HTML>

其中一个可能的原因可能是用户电子邮件不是URL编码的(@应编码为%40)。使用自动处理URL编码的以下代码:

query.addCustomParameter(new CustomParameter("xoauth_requestor_id", userEmail));
而不是手动附加参数


另一个可能的原因是,您的应用程序没有被用户所属的Google应用程序域的管理员授予访问日历的权限。您可以在此页面查看:。

非常感谢您的回复添加查询。addCustomParameter(新的CustomParameter(“xoauth_请求者_id”,userEmail));只是为我工作。
query.addCustomParameter(new CustomParameter("xoauth_requestor_id", userEmail));