首先,我要感谢Google GData API工程师的出色工作,我想提一下这个问题并不是要批评任何事情.它只是指出了事情.
有人可以向我解释一下吗?据我所知,java的谷歌api客户端库的开发人员正在重新发明轮子.这就像为Java项目编写一个新的JDK,因为abdera客户端执行google api客户端库所做的事情,abdera服务器功能和适配器也可用于许多事情,例如入口持久性和许多其他事情.
我知道google数据协议是一个特定的原子发布,但如果需要使用Apache Abdera项目为此协议提供的一些花哨的扩展和功能,最好不要使用google api客户端库并且从头开始用Abdera实现客户端...而且我敢肯定,在很多情况下,它的功能,如Abdera的JCR适配器将变得非常方便谷歌文档,谷歌翻译工具包,实际上对大多数其他人.
现在很高兴有一个谷歌api客户端库用于谷歌文档,但我将如何处理文档和原子Feed响应?我相信在一半以上的案例中,另一方面也有一个存储库或数据库.在这种情况下,需要abdera,而不是简单的google api客户端,它们只是编组/解组订阅源...
事实上,所有的谷歌API都有一些东西要坚持下去.如果google决定将努力投入到Abdera增强或集成中,那将是有道理的......这不是......特别是考虑到软件开发中一个众所周知的事实,第二个版本通常是从头开始重写.Apache Abdera是一个成熟的项目,有5年的存在,被大量的应用程序使用.
如果有原因,我没有看到并实现使用pull解析器的客户端只是非常必要,我至少会使用一个不被弃用的xml pull解析器.Xmlpull.org已有6年历史,但尚未启用,甚至没有实现StAX api.stax.codehaus.org参考实现,JRE默认stax实现,Apache Axiom实现以及主要woodstox.codehaus.org实现会更好,为什么要避免规范和活动项目的支持和社区?
我向google api客户端java库的开发人员致歉,但我真的很喜欢google apis,但是使用这个客户端的第一个版本真的很痛苦,目前的版本很不错.但实际上浪费了很多时间主要是因为重新发明轮子以及从版本0到gdata-java-client到google-api-client-java的那些极端的版本间更改.
最后,谷歌在人们投入时间和金钱后限制API,所以为什么要关心,对吧?:-)
我收回了我所说的内容,从那时起软件和协议发生了很大变化......现在当GData支持JSON时,使用它甚至没有意义!
你好android爱好者,我很难找到解决这个问题的方法.我打算访问用户的Google日历和Google文档,(使用google-api-java-client-v1.6.0).我可以通过AccountManager访问用户的Google帐户,但我没有因为这个原因请求authToken对用户进行身份验证:
当用户确认应用程序访问其Google帐户时,如何在单个活动中处理Docs和Cal的多个authToken请求?
在我的应用程序中,当用户允许访问用户帐户时,Google Docs和Cal会在不同的选项卡上运行.
任何链接教程将不胜感激.
TYIA.
当我调用"books.volumes.get"API时,我得到一个"pageCount",它与为同一本书调用"books.volumes.list"API不同.
以"密码学解密"书名为例,使用Google API Explorer,我将获得"pageCount"的以下值:
books.volumes.get:"pageCount"= 392
books.volumes.list:"pageCount"= 352
请注意两个查询结果中的卷ID完全相同.( "ID"= wNFQAAAAMAAJ)
对这种奇怪的行为有什么建议吗?任何反馈将不胜感激.
我正在使用Google JavaScript API在网络应用中获取谷歌联系人,我想要检索他们的图片.
我正在做这样的事情(大大简化):
var token; // let's admit this is available already
function getPhotoUrl(entry, cb) {
var link = entry.link.filter(function(link) {
return link.type.indexOf("image") === 0;
}).shift();
if (!link)
return cb(null);
var request = new XMLHttpRequest();
request.open("GET", link.href + "?v=3.0&access_token=" + token, true);
request.responseType = "blob";
request.onload = cb;
request.send();
}
function onContactsLoad(responseText) {
var data = JSON.parse(responseText);
(data.feed.entry || []).forEach(function(entry) {
getPhotoUrl(e, function(a, b, c) {
console.log("pic", a, b, c);
});
});
}
Run Code Online (Sandbox Code Playgroud)
但是我在Chrome和Firefox中都遇到了这个错误:
跨源请求封锁:同源策略不允许读取远程资源在https://www.google.com/m8/feeds/photos/media/<user_email?>/<some_contact_id> V = …
oauth gdata-api google-data-api google-shared-contacts google-oauth
我可以在localhost上运行一个简单的"Hello World"Google App Engine应用程序,没有任何问题.但是,当我将"import gdata.auth"行添加到我的Python脚本时,我得到"ImportError:No module named gdata.auth".
我已经安装了gdata模块并将以下行添加到我的.bashrc中:
export PYTHONPATH=$PYTHONPATH:/Library/Python/2.5/site-packages/
还有什么我需要做的吗?谢谢.
编辑:奇怪的是,如果我从shell运行python并输入"import gdata.auth",我不会收到错误.
我希望让用户在我的应用中输入关键字,然后在谷歌搜索此关键字,对结果执行一些逻辑并向用户显示最终结论.
这可能吗?如何从我的应用程序在谷歌上执行搜索?回复的格式是什么?如果有人为此提供了一些代码示例,我们将不胜感激.
谢谢,
我想通过使用来阅读我的Gmail收件箱Google.GData.Client.dll.我该如何做到这一点?我想要一个示例程序.
我刚刚使用新的google-api-java-client实现了Google Translator Toolkit API.问题是,在文档中没有提到authTokenType,它似乎对身份验证很重要.
在样本中,
bigquery-json-clientlogin-sample正在使用 authTokenType = "ndev";
prediction-json-clientlogin-sample正在使用 authTokenType = "xapi";
如果我使用这两个中的一个,我会获得授权令牌,但如果我使用它,我将被禁止访问该服务.如果我使用不同的"whathever"我甚至不会获得授权令牌......
这是客户端代码
我一直在尝试使用Python库来访问Google Sites API.
第一步要求用户授权我们的应用程序,他们建议使用OAuth2,并提供可在此处找到的库.
在授权过程结束时,您最终会得到一个OAuth2Credentials对象.
问题是,当我尝试向Google Sites API发出请求时,我想说:
import gdata.sites.client
client = gdata.sites.client.SitesClient(site=None, domain='mydomain.com')
Run Code Online (Sandbox Code Playgroud)
我不知道如何使用OAuth2Credentials对象.
我想更新Google Spreadsheets中的单元格值,但不幸的是收到错误:
Google.GData.Client.GDataRequestException was unhandled
HResult=-2146233088
Message=Execution of request failed: https://spreadsheets.google.com/feeds/cells/1nW8nxoS2l9pbj6dctreEfKHNXmsfbbsCAvOd7TIj4Bo/od6/private/full/R1C1
Source=Google.GData.Client
ResponseString=Missing resource version ID
StackTrace:
at Google.GData.Client.GDataRequest.Execute()
...
at System.Threading.ThreadHelper.ThreadStart()
InnerException: System.Net.WebException
HResult=-2146233079
Message=The remote server returned an error: (400) Bad Request.
Source=System
StackTrace:
at System.Net.HttpWebRequest.GetResponse()
at Google.GData.Client.GDataRequest.Execute()
Run Code Online (Sandbox Code Playgroud)
我的代码非常简单,基于从https://developers.google.com/google-apps/spreadsheets/?csw=1#changing_contents_of_a_cell下载的示例:
SpreadsheetsService service = new SpreadsheetsService("MySpreadsheetIntegration-v1");
// TODO: Authorize the service object for a specific user (see other sections)
service.setUserCredentials("...", "...");
// Instantiate a SpreadsheetQuery object to retrieve spreadsheets.
SpreadsheetQuery query = new SpreadsheetQuery();
// Make a request …Run Code Online (Sandbox Code Playgroud) google-data-api ×10
c# ×2
python ×2
android ×1
atompub ×1
auth-token ×1
gdata ×1
gdata-api ×1
google-api ×1
google-books ×1
google-oauth ×1
iphone ×1
java ×1
macos ×1
oauth ×1
oauth-2.0 ×1
search ×1