3

我正在创建一个移动应用程序来播放存储在我的 SoundCloud 帐户中的音乐。

有什么方法可以自动登录到我的 SoundCloud 帐户 (PHP)?我不希望每个用户都必须使用 OAuth,因为它只是访问我的帐户,而且他们已经登录到我的网站。

基本上我只想拥有一个用户曲目列表,并让用户能够使用我的 Web 表单从此帐户中添加或删除曲目。

我见过的所有文档都使用 OAuth 登录个人帐户,但我只想访问我的帐户。

任何帮助或寻找方向都会很棒

谢谢

4

3 回答 3

1

我能够使用未记录的(在 PHP 中!)credentialsFlow 函数以编程方式在 PHP 中登录到 soundcloud 帐户:

$sc_client_id = "Client ID from the developer page on soundcloud for your app"; 
$sc_secret = "Client Secret from the developer page";
$sc_user = "your soundcloud account user";
$sc_pass = "your soundcloud account password";
// create client object and set access token
$client = new Services_Soundcloud($sc_client_id, $sc_secret);
// login
$client->credentialsFlow($sc_user, $sc_pass);

然后您可以使用 $client 变量上传音频文件,例如此代码,取自“上传音频文件”,http://developers.soundcloud.com/docs#uploading

// upload audio file
$track = json_decode($client->post('tracks', array(
    'track[title]' => 'This is my sound',
    'track[asset_data]' => '@/absolute/path/to/file.mp3'
)));

// print track link
print $track->permalink_url;
于 2013-01-04T14:24:40.387 回答
0

看起来你可以解析 JSON 格式的轨道数据

http://api.soundcloud.com/tracks?client_id=#{client_id}&limit=10&format=json

也没有“登录”。您只是在抓取用户的公共曲目。

Soundcloud 有一个完整的开发人员 API,您可能应该复习一下。

于 2011-08-12T00:28:30.277 回答
0

这是我的建议:让您的用户为自己创建单独的 SoundCloud 帐户,然后创建一个界面,允许他们与您共享单独的曲目,然后您可以将其聚合到某种播放列表中(然后可以将其流式传输到您希望的任何设备,通过 SoundCloud)。

这具有以下优点:

  1. 您可以控制自己的个人 SoundCloud 帐户,而不必担心它会扩大到无法管理的规模。
  2. 您可以调整曲目,允许您筛选受版权保护或巨魔内容。
  3. 它更具可扩展性——如果您使用 Drupal 的聚合工具之类的东西,或者 FeedWordPress 之类的插件(不确定您的 CMS 平台是什么,如果有的话),您正在使用的曲目的 RSS 提要也可以被您的其他地方获取和使用用户,因此可能会增加您的受众规模。即,显示人们可以放到社交资料或博客或其他任何东西上的最新曲目的小部件。
  4. 如果设置得当,您的解决方案可能能够包含非 SoundCloud 流媒体源——YouTube 等。

基本上,您将发送给您的链接转储到 RSS 提要中,这对于跨浏览器和跨操作系统都非常容易使用。我个人会为此使用 Drupal,但我确信在 Joomla!、WordPress 或任何其他值得一提的 CMS 中也有同样容易做到这一点的方法。

于 2011-08-12T01:26:04.670 回答