我在看 http://code.google.com/intl/sv-SE/apis/gdata/docs/auth/authsub.html 和 http://code.google.com/intl/sv-SE/appengine/articles/java/retrieving_gdata_feeds.html
我的代码如下所示,以生成网址
String nextUrl = "http://myapp.appspot.com/retrieveToken/";
String scope = "http://www.google.com/calendar/feeds/";
boolean secure = false; // set secure=true to request secure AuthSub tokens
boolean session = true;
String authSubUrl = AuthSubUtil.getRequestUrl(nextUrl, scope, secure, session);
生成的网址如下所示
https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fmyapp.appspot.com%2FretrieveToken%2F&scope=http%3A%2F%2Fwww.google.com%2Fcalendar%2Ffeeds%2F&secure=0&session=1
看起来不错.. 然而,当我按照URL时,我被告知了
的内容"http://appspot.com" is not registered.
(我在瑞典语中得到它:)
这里可能有什么问题?
答案 0 :(得分:1)
这很奇怪,因为您选择了secure = false
,所以您不必注册该应用程序(您的URL中有secure=0
)。但我认为这是与*.appspot.com
域相关的问题,因为如果您将nextUrl
更改为其他内容,请说"http://myapp.randomDomainHjYHBB4F.com/retrieveToken/"
,新网址为:
https://www.google.com/accounts/AuthSubRequest?next=http%3A%2F%2Fmyapp.randomDomainHjYHBB4F.com%2FretrieveToken%2F&scope=http%3A%2F%2Fwww.google.com%2Fcalendar%2Ffeeds%2F&secure=0&session=1
......它有效!这不是很好奇吗?
所以我不能告诉你什么是错的,但有一个简单的解决方法:你可以register your application和switch to secure mode!