在访问公共工作表的Java客户端应用程序中,我是否必须使用默认的google API身份验证?

在访问公共工作表的Java客户端应用程序中,我是否必须使用默认的google API身份验证?,java,google-api,google-oauth,google-api-java-client,Java,Google Api,Google Oauth,Google Api Java Client,我正在创建一个开源Java客户机应用程序,我不想只从公共读取中获取数据 用户不需要验证/登录,所以我想知道是否有一种方法根本不需要任何身份验证 如果这是不可能的,如果有人能解释我如何为这一页创建只读凭据,那将非常有帮助。为了使用Google API,您需要在所有调用中向Google标识您的应用程序。这是因为他们需要知道哪个应用程序正在使用他们的api,以避免垃圾邮件或服务器过载。对于私人用户数据,这是由用户登录时创建的凭据完成的。但是,对于公共数据,您可以使用APK密钥,这只允许您进行只读访问。

我正在创建一个开源Java客户机应用程序,我不想只从公共读取中获取数据

用户不需要验证/登录,所以我想知道是否有一种方法根本不需要任何身份验证


如果这是不可能的,如果有人能解释我如何为这一页创建只读凭据,那将非常有帮助。

为了使用Google API,您需要在所有调用中向Google标识您的应用程序。这是因为他们需要知道哪个应用程序正在使用他们的api,以避免垃圾邮件或服务器过载。对于私人用户数据,这是由用户登录时创建的凭据完成的。但是,对于公共数据,您可以使用APK密钥,这只允许您进行只读访问。除非您获得使用Oauth的授权,否则您将无法写入任何内容,因此,只要您正在阅读此工作表并仅阅读,那么使用API密钥就可以了


然而,由于您的项目是开源的,您将不被允许在您的项目中包含此API密钥,因为它是针对Google的TOS的。您需要指导用户如何创建自己的API密钥。他们可以将其用于您的项目。

请提供您的问题的更详细描述,您是否尝试过您这边的任何东西如果是,请附上有疑问的内容,此链接将对您有很大帮助。@AnuragSharma我认为问题在于如何在不包含Google凭据的情况下发布开源项目。因为它们不允许存储在开源项目中。如果我使用Github机密,并且只在编译版本中使用密钥,那么它仍然会反对Google的TOS,因为你仍然可以找到密钥,对吗?如果有人可以访问密钥,那么是的,你将反对Google的TOS。只有您和您的开发人员可以访问您的密钥。您需要了解,该密钥已连接到您的开发人员帐户,如果有人开始向系统发送垃圾邮件,您将被关闭,因为他们会认为是您,即使有人刚刚下载了您的开源项目。