Как получить правильный url soundcloud для встраивания из стандартного url?
Итак, прямо сейчас я могу захватить url-адрес из уже встроенных файлов soundcloud в тегах embed или iframe и использовать эти URL-адреса на другой странице и отобразить его в fancybox. Есть ли способ получить правильный url-адрес или отобразить в fancybox, если пользователь предлагает типичный url-адрес, такой как http://soundcloud.com/song-b/song-please
или http://snd.sc/yp6VMo
? Я попытался посмотреть документацию api, но я не мог найти то, что искал.
4 ответов
Он пытается получить html для создания виджета Soundcloud, а не получить url API для трека. The метод oEmbed "будет служить код встраивания виджета для любого SoundCloud URL, указывающего на пользователя, группу, набор или список воспроизведения" и рекомендуется, чтобы убедиться, что изменения Soundclouds не нарушают ваше приложение (в отличие от создания собственного Flash-объекта или iframe). Вы можете вызвать его с помощью веб-запроса в PHP
http://soundcloud.com/oembed?format=js&url=[escaped_url]&iframe=true
или с вызовом JSON-P (используя jQuery для удобство)
$.getJSON('http://soundcloud.com/oembed?callback=?',
{format: 'js', url: 'http://snd.sc/yp6VMo', iframe: true},
function(data) {
// Stick the html content returned in the object into the page
$('#your_player_div').html(data['html'])
}
)
Я добавляю iframe=true, чтобы вы получили новый HTML5-плеер, опустите, чтобы получить старый Flash-объект. Он также работает с .sc короткие URL-адреса, которые вы используете.
вы можете попробовать это для URL песни не для идентификатора url песни
<iframe width="100%" height="166" scrolling="no" frameborder="no"src="http://w.soundcloud.com/player/?url=http://api.soundcloud.com/elissafranceschi/war&auto_play=false&color=915f33&theme_color=00FF00"></iframe>
Я не совсем уверен, что вы спрашиваете здесь, но похоже, что вам может понадобиться конечная точка API "resolve". http://developers.soundcloud.com/docs/api/resolve
пример:
$ curl -v 'http://api.soundcloud.com/resolve.json?url=http://soundcloud.com/matas/hobnotropic&client_id=YOUR_CLIENT_ID'
HTTP/1.1 302 Moved Temporarily
Location: http://api.soundcloud.com/tracks/49931.json
Это даст вам всю информацию о треке и этого должно быть достаточно для все, что нужно сделать. Также не забывайте, что есть в HTML5 виджет тоже.
Я не пробовал это, модифицированный код из здесь:
<object height="81" width="100%">
<param name="movie" value="http://player.soundcloud.com/player.swf?url=<?php echo $url; ?>&g=bb"></param>
<param name="allowscriptaccess" value="always"></param>
<embed allowscriptaccess="always" height="81" src="http://player.soundcloud.com/player.swf?url=<?php echo $url; ?>&g=bb" type="application/x-shockwave-flash" width="100%"></embed>
</object>
<a href="<?php echo $url; ?>"><?php echo $url; ?></a>