【问题标题】:Sending song data from spotify to a backend, e.g. song title, artist etc.将歌曲数据从 spotify 发送到后端,例如歌名、歌手等
【发布时间】:2012-01-22 00:27:44
【问题描述】:

是否可以将歌曲信息从 Spotify 发送到后端?

我创建了一个外部 php 脚本,它将 POST 歌曲的详细信息插入到数据库中。但是当我尝试从 Spotify 应用程序中使用它时,它不起作用?

这是我的 spotify 应用程序中的代码:

var track = playerTrackInfo.data;
var trackdata = [
  { name: 'songtitle', value: track.name},
  { name: 'songartist', value: track.album.artist.name}
];

$.post('http://www.mysite.com/insertdata.php', trackdata).error(function() { console.log("Error"); });

上面的代码只是将“错误”记录到控制台中。

我已将“http://www.mysite.com”添加到 manifest.json 文件中,但仍然没有成功。

任何帮助将不胜感激!

【问题讨论】:

  • 你在 php 端遇到了什么错误?
  • 无,我使用 Spotify 之外的测试数据测试了 php 脚本,它运行良好。

标签: jquery spotify


【解决方案1】:

根据 jQuery post() documentation,您的第二个参数 (trackdata) 必须是对象或字符串。试试这个:

$.post(url, {'trackdata[]': trackdata}).error(function() { console.log("Error"); });

【讨论】:

  • 谢谢,我试过了,它在我的数据库中插入了空白记录......所以我恢复到原来的代码行,现在它工作正常!我不知道为什么昨晚它不起作用,我没有改变任何其他东西!
  • 另外,不确定您是否知道这一点,但请记住在更改应用程序清单时重新启动 spotify。
  • 这可能就是问题所在!我不认为我在编辑清单后重新启动了 Spotify,我不知道你必须这样做。我已经更新了我的答案,以防它帮助其他人。谢谢!
【解决方案2】:

原来的代码现在可以正常工作了,不知道为什么一开始不工作。这里是:

var track = playerTrackInfo.data;
var trackdata = [
  { name: 'songtitle', value: track.name},
  { name: 'songartist', value: track.album.artist.name}
];

$.post('http://www.mysite.com/insertdata.php', trackdata).error(function() { console.log("Error"); });

问题可能是因为我在编辑清单后没有重新启动 Spotify。

【讨论】:

  • 是的,您肯定需要重新启动 Spotify 才能使清单更改生效。
猜你喜欢
  • 2013-09-27
  • 2016-07-01
  • 2012-09-23
  • 1970-01-01
  • 1970-01-01
  • 2017-10-11
  • 2017-09-19
  • 1970-01-01
  • 2017-05-08
相关资源
最近更新 更多