【问题标题】:Alexa Skill FeedHelper.js - how can i get the enclosure URL?Alexa Skill FeedHelper.js - 我如何获取附件 URL?
【发布时间】:2018-05-24 09:45:26
【问题描述】:

我正在使用来自亚马逊的蓝图来开发 Alexa 提要技能。在此蓝图中,从 URL 调用 RSS 提要并转换为 JSON 格式并保存在 Amazon S3 上。

此文件负责执行该操作(它适用于标准元素)

https://github.com/alexa/skill-sample-nodejs-feed/blob/master/lambda/custom/feedHelper.js

我现在还需要附件网址,因为我想播放播客。我认为可以通过在第 63 行的 feedHelper.js 中添加以下内容来实现:

                        if (item['enclosure']) {
                        feedItem['enclosureUrl'] = item['enclosure'].attributes['url'];
                    }

但是借助这个文件在 S3 上生成的 JSON 中仍然没有附件元素。我有没有正确调用它?

我也试过了:

                        if (item['enclosure']) {
                        feedItem['enclosureUrl'] = item['enclosure'].url;
                    }

                        if (item['enclosure']) {
                        feedItem['enclosureUrl'] = item['enclosure']['url'];
                    }

另一个问题是,音频链接与 https:// 链接,亚马逊不接受 HTTP... 但是当我在浏览器栏中手动输入这个地址并在前面加上 https 时,下载就可以了。所以希望我能够像这里描述的那样将 HTTP 从附件标签更改为 https?

http://code.dblock.org/2017/02/09/alexa-skill-to-play-your-podcast.html

所以总结一下:我需要来自 RSS 提要的这个元素

      <enclosure type="audio/mpeg" url="http://feeds.soundcloud.com/stream/file.mp3" length="7087881"/>

以使用 feedHelper.js 创建的 JSON 格式编写

目前,尽管我上面的代码,它没有在 json 中生成任何附件元素。

有人有想法吗?

谢谢!

【问题讨论】:

    标签: javascript json node.js amazon-s3 rss


    【解决方案1】:

    一位朋友帮助我发现提要解析器的规范化选项对我隐藏了附件标签。所以我关闭了正常化。但是你必须对这些项目进行一些不同的称呼。像 rss:title 而不是 title,.. 等等。 帮我解决了这个问题!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-10
      相关资源
      最近更新 更多