我们有一个新的身份验证Picasa网络问题picasaweb.google.com的OAuth 2.0
我们正在使用C#.NET 2012这个代码(框架4.5.1)
const string ServiceAccountEmail = "[email protected]";
var certificate = new X509Certificate2(@"C:\key.p12", "notasecret", X509KeyStorageFlags.Exportable);
var serviceAccountCredentialInitializer =
new ServiceAccountCredential.Initializer(ServiceAccountEmail)
{
Scopes = new[] { "https://picasaweb.google.com/data/"}
}.FromCertificate(certificate);
var credential = new ServiceAccountCredential(serviceAccountCredentialInitializer);
if (!credential.RequestAccessTokenAsync(System.Threading.CancellationToken.None).Result)
throw new InvalidOperationException("Access token request failed.");
var requestFactory = new GDataRequestFactory(null);
requestFactory.CustomHeaders.Add("Authorization: Bearer " + credential.Token.AccessToken);
requestFactory.CustomHeaders.Add("Gdata-version: 2");
PicasaService service = new PicasaService("api-project");
service.RequestFactory = requestFactory;
PhotoQuery query = new PhotoQuery(PicasaQuery.CreatePicasaUri(_IdUsuari, _albumid));
PicasaFeed feed = service.Query(query);
我们有一个错误检索PicasaFeed: 未处理的异常:Google.GData.Client.GDataRequestException:AUT hentication执行请求返回意想不到的结果:404
我们做链接的每一步:Google.GData.Client.GDataRequestException - Authentication suddenly fails in old code 乙它没有工作,是我们使用4.5.1而不是4.5?
我们做了一些测试生成从谷歌的网页令牌:https://developers.google.com/oauthplayground
我们选择Picasa网络API V2与范围:https://picasaweb.google.com/data/
这已生成的令牌。我们标记了“自动刷新令牌失效”选项,因为它在3600秒内到期。 问题是这个标记是否在3600秒后改变? 。 从这个环节,我们已经取代了以前的代码,生成的令牌,其中“XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX”是生成令牌:
var requestFactory = new GDataRequestFactory(null);
requestFactory.CustomHeaders.Add("Authorization: Bearer " + "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
requestFactory.CustomHeaders.Add("Gdata-version: 2");
PicasaService service = new PicasaService("api-project");
service.RequestFactory = requestFactory;
PhotoQuery query = new PhotoQuery(PicasaQuery.CreatePicasaUri(_IdUsuari, _albumid));
PicasaFeed feed = service.Query(query);
而与此令牌,如果它的工作原理。 任何由令牌代码生成的第一个代码在生成令牌和读取到Picasa时无法正常工作的想法。 有没有人有任何解决方案?
非常感谢您
访问令牌到期后,3600这是正常的 – DaImTo