【问题标题】:Query does not return JSON though it should查询不返回 JSON,尽管它应该
【发布时间】:2013-03-15 15:12:49
【问题描述】:

为什么这个链接返回xml内容...?:

https://gdata.youtube.com/feeds/api/videos/uENITui5_jU#!?v=2&alt=json

而这个返回正确的 JSON?

https://gdata.youtube.com/feeds/api/videos/Zce-QT7MGSE?v=2&alt=json

我怀疑这是因为 URL 的 video_id 字段中的 bang 或井号。有谁知道如何修理它?不,引用它们也不起作用。

【问题讨论】:

  • 我敢打赌第一个链接中的哈希值是相关的
  • 我同意,它在它之后定义了一个片段。我只是想知道如何对 video_id 字段进行编码,以便我仍然可以检索它的提要信息。
  • 我已经尝试对它进行百分比编码,但没有成功 (404)。您确定 URL 至少 接近 是正确的吗?

标签: youtube-api


【解决方案1】:

YouTube ID 中永远不会有锚点 (#),所有 YouTube ID 都是 11 个字符。基本上,锚点之后的所有内容都会被 Web 服务器以不同的方式处理,因此“!?v=2&alt=json”在您的请求中会被忽略。

您要查找的视频 ID 是“uENITui5_jU”,因此这是正确的请求: https://gdata.youtube.com/feeds/api/videos/uENITui5_jU?v=2&alt=json

不知道你是怎么得到额外的“#!”的里面的人物..

【讨论】:

  • 我完全相信 YT 的视频 ID 有 13 个字符长,而实际上只有 11 个字符。他们不好,他们会提前用完代码。无论如何,非常感谢您的回答。
  • 没问题,虽然我认为他们在一段时间内不会用完 ID。他们有足够的 64^11 个视频...
  • 现在我知道为什么“#!”配对显示:当您单击嵌入视频中的“YouTube”徽标时添加它,以便您转到 YouTube 服务器观看。
猜你喜欢
  • 2020-08-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-04
  • 1970-01-01
  • 1970-01-01
  • 2016-12-05
  • 1970-01-01
相关资源
最近更新 更多