【问题标题】:soundcloud search api ignoring duration filter?soundcloud搜索api忽略持续时间过滤器?
【发布时间】:2026-01-01 03:55:01
【问题描述】:

我正在对 soundcloud api 进行一些试验......不过,这很酷:

看起来当我尝试应用过滤器来搜索曲目时,api 忽略持续时间......

请参阅下面的代码片段。目的是在过去 2 个月内搜索 (10) 个 trance 曲目,按受欢迎程度排序,持续时间超过一个小时......据我所知,持续时间必须以毫秒为单位指定(因此* 100) 顺便说一句,soundcloud 对象是 SC,用我的 API 密钥初始化

我是不是做错了什么,因为我看了看控制台,大多数曲目少于一个小时?

谢谢!

砂光机

Soundcloud.get("/tracks", {
   genres: "Trance,trance",
   order: "hotness",
   limit: 10,
   created_at: {
       from: moment().subtract(2, 'months').format("YYYY-MM-DD") 
   },
   duration: {
       from: 3600 * 1000 // seconds * 1000
   }
}, function(tracks) {
   console.log('tracks', tracks);
});

【问题讨论】:

  • 当您删除“持续时间”时,是否会改变结果?只是为了检查持续时间是否被忽略..
  • 抱歉挖了尸体,你解决了这个问题吗?我遇到了类似的问题,从我的经历看来,添加流派过滤器会导致这个问题,没有流派过滤器,至少在我的情况下,它似乎按预期工作。见这里 => *.com/questions/45395473/…

标签: javascript angularjs soundcloud


【解决方案1】:

我建议您使用"duration[from]" 而不是您的对象定义。这是我使用的,SoundCloud 给了我一致的匹配结果。

其次,将created_at 参数中的格式更改为.format("YYYY-MM-DD HH:mm:ss")

【讨论】: