当前位置: 首页 > 知识库问答 >
问题:

使用Java客户端库连接到YouTube数据API v3时出现问题-示例代码过时?

桂坚
2023-03-14

这是一个非常基本的初学者问题,但我检查了主要的API网站(https://developers.google.com/youtube/v3/)相当彻底,乱搞了相当令人沮丧的同时与示例代码,使用谷歌找到其他工作示例,我想出了什么,所以我决定在这里问问。

我的目标是编写一个简单的Java程序,连接到YouTube帐户,检索用户播放列表的名称和内容,然后可能将其保存到文本文件或w/e。

我在网站上找不到太多东西来解释通过Java正确连接YouTube帐户所涉及的具体步骤,所以我尝试运行一些示例代码。如果我以这个为例:https://developers.google.com/youtube/v3/code_samples/java#retrieve_my_uploads并将其粘贴到Eclipse中,它告诉我:

>

  • 不推荐使用“FileCredentialStore”类型
  • 按照以下方法:

    GoogleClientSecrets clientSecrets=GoogleClientSecrets。加载(JSON_工厂,MyUploads.class.getResourceAsStream(“/client_secrets.JSON”)

    它告诉我:GoogleClientSecrets类型中的方法加载(JsonFactory, Reader)不适用于参数(JsonFactory, InputStream)

    我在谷歌上搜索了一下,发现示例中使用的使用InputStream的方法被弃用了,我相信后来在1.16中被删除了。

    >

  • 随后发生以下错误:

    channelRequest。setMine(“真实”)

    其中字符串"true",应为布尔值true。我再次假设该方法的先前版本已被弃用。

    我试着去摆弄它,试着把谷歌的东西拼凑起来,但它根本不起作用。代码似乎已经过时,无法与最新版本的API一起使用,而且我在网上找到的大多数代码似乎也很旧。我对我正在做的事情了解得不够,也找不到任何文档来描述需要哪些步骤、为什么以及它们是如何工作的。例如,我不知道客户的秘密是什么。json不仅仅是身份验证的一部分,它还代表身份验证以及如何设置。如果API站点详细解释了它,我就找不到它的位置。

    有人知道有一个站点有一些最新的示例代码,可以执行一些简单的连接和数据检索吗?或者是一个说明如何连接的适当的分步指南?我本以为像YouTube API这样的东西会很简单,而且有很好的文档记录,但我就是想不起来,除非我错过了一些重要的东西,但我没有想法。


  • 共有1个答案

    郎磊
    2023-03-14

    GoogleAPI表示:不推荐使用InputStream加载方法。(计划在1.16中删除)改用load(JsonFactory,Reader)。来源

    从而将输入流转换为读取器并解决了问题

     private static GoogleClientSecrets loadClientSecrets(String clientSecretsLocation) {
            try {
                Reader reader = new InputStreamReader(BigQueryJavaGettingStarted.class.getResourceAsStream(clientSecretsLocation));
                GoogleClientSecrets clientSecrets = GoogleClientSecrets.load(new JacksonFactory(),
                        reader);
            } catch (Exception e) {
              System.out.println("Could not load client_secrets.json");
              e.printStackTrace();
            }
            return clientSecrets;
          }
    
     类似资料:
    • 问题内容: 我正在尝试使用基本上通过以下方式构建的Java客户端使用SSL消耗IBM MQ(版本8.0.0.8): Oracle JKD 8和IBM JRE 7(出于测试目的,我每个都有一个客户端) com.ibm.mq.allclient-9.1.0.0.jar javax.jms-api-2.0.1.jarspring-jms-4.3.7.RELEASE.jar spring-jms-4.3.

    • 我有一个IP地址每次我收到连接失败的消息时,我都尝试了很多连接到该服务器的方法。出于安全原因,我隐藏了用户名和密码。 代码: 我有例外 组织。postgresql。util。PSQLException:连接尝试失败。在org。postgresql。果心v3。连接工厂impl。org上的openConnectionImpl(ConnectionFactoryImpl.java:292)。postgr

    • 我收到一个错误: 编辑:链接到堆栈跟踪 下面是错误的最后一个“部分”,表示这是一个: ' 我的URL字符串:“jdbc:mysql://127.0.0.1:3306/schemaname?useUnicode=true 我的连接代码片段: 我已经使用了正确的模式/库名、用户名、密码和所有其他所需的“需求”。我还设置了绑定地址为,端口为。数据库是在线的,我已经确保服务正在运行。

    • 问题内容: 我正在尝试建立与trackobot.com的连接以接收一些JSON数据。服务器仅允许通过HTTPS / SSL进行连接。这是代码: openSteam抛出javax.net.ssl.SSLHandshakeException:收到致命警报:handshake_failure 我通读了与类似问题有关的几篇文章,但没有任何建议可以帮助您。适当的证书在我的信任库中。例如,当我尝试连接到goo

    • 使用java-version:1.8.0_171,我试图连接到API网关,但使用java8却得到一个SSL handshake_failure。已经运行的命令: 启用时,我得到了以下信息: 更新

    • 我的Grails应用程序在开发模式下使用h2数据库(Grails应用程序的默认行为)。中的DB连接设置是 我正在尝试使用IntelliJ IDEA的数据库客户端工具为此数据库建立连接。我开始这样创建连接 然后在下面的对话框中,输入JDBC URL 并选择“模式”上的所有可用数据库 “Test Connection”(测试连接)按钮表示成功,但从红色圆圈中可以看到,没有找到任何表格。似乎我已经正确地