如何从GWT应用程序调用YouTube API



我需要将YouTube API集成到我的GWT web应用程序中。我需要进行YouTube API调用,例如以下调用:

  • 上传:https://developers.google.com/youtube/2.0/developers_guide_protocol_browser_based_uploading
  • 检查状态:https://developers.google.com/youtube/2.0/developers_guide_protocol_checking_video_status
  • 设置开发者标签:https://developers.google.com/youtube/2.0/developers_guide_protocol_uploading_videos#Assigning_Developer_Tags

为了规避浏览器的同源限制,调用必须是CORS调用。

如何从GWT web应用程序进行这些YouTube API调用?如果能提供一个小的代码示例,我们将不胜感激。

请注意,我曾尝试使用YouTube Direct Lite,但它似乎不允许设置开发者标签。这对我来说至关重要。

YouTube提供了一个示例,展示了如何进行YouTube API CORS调用:

  • 示例的源代码
  • 样品演示

您可以使用GWT的JavaScript Native Interface(JSNI)将示例中的JavaScript集成到GWT应用程序中:

  • 关于JSNI的更多信息

请注意,示例JavaScript使用某些浏览器版本不支持的XMLHttpRequest

  • CORS/XMLHttpRequest支持矩阵

我个人没有使用过YouTube API,但从API中我可以推断出,你基本上需要完成三件事

  1. 通过GWT中的RequestBuilder进行HTTPPOST请求调用,如下所述
  2. 通过XML创建和解析
  3. 使用带有FileUpload小部件的FormPanel来处理实际的文件上传

我链接的内容提供了一些很好的代码示例,当然可以帮助您按照YouTube的要求在GWT中调用API。要使HTTP调用CORS,请参阅这篇SO文章。

相关内容

  • 没有找到相关文章

最新更新