#php #api #soundcloud #artwork
#php #API #soundcloud #обложка
Вопрос:
Мы используем SoundCloud API для загрузки треков с помощью PHP. Все это работает отлично, но мы хотели бы иметь возможность обновлять обложку трека с помощью SoundCloud API. Мы уже загружаем обложку при первоначальной загрузке трека, но когда мы пытаемся изменить ее после первоначальной загрузки, кажется, что это не работает (мы не получаем никаких ошибок, она просто не обновляется и остается такой же, как и раньше).
Это намеренное ограничение SoundCloud API или я что-то упускаю?
Редактировать 1: я отправил электронное письмо команде SoundCloud API, чтобы спросить, не могли бы они просто уточнить, возможно ли обновление обложки трека через API, но я не получил ответа (пока около 48 часов).
Правка 2 — 2014-07-08: прошло 4 дня, а ответа от команды SoundCloud API все еще нет? Я невежественен, думая, что это простой ответ «да, это должно работать» или «нет, который не поддерживается текущим API»?
Правка 3 — 2014-08-28: Прошло более 7 недель, а до сих пор ничего не слышно от SoundCloud. Похоже, они не собираются отвечать!
$track_info_array = array(
'track[title]' => $track['title'],
'track[sharing]' => $track['sharing'],
'track[track_type]' => $track['track_type'],
'track[purchase_url]' => $track['purchase_url'],
'track[description]' => $track['description'],
'track[genre]' => $track['genre'],
'track[label_name]' => $track['label_name'],
'track[tag_list]' => $track['tag_list'],
'track[release_day]' => $release_date[2],
'track[release_month]' => $release_date[1],
'track[release_year]' => $release_date[0],
'track[isrc]' => $track['isrc'],
'track[release]' => $track['release'],
'track[bpm]' => $track['bpm'],
'track[key_signature]' => $track['key_signature']
);
if($release_image){
$track_info_array['track[artwork_data]'] = '@'.$release_image;
}
$track_info = $soundcloud->put('tracks/' . $track['soundcloud_track_id'], $track_info_array);
Комментарии:
1. Эй, я посмотрю на это, когда вернусь домой через несколько часов. Я просто хотел упомянуть, что разработчики Soundcloud сказали, что API будет немного шатким, пока они вносят изменения в сайт.
Ответ №1:
Если это возможно, я полагаю, вы хотите использовать PUT вместо запроса POST. вы также захотите включить идентификатор трека в конечную точку.
Комментарии:
1. Извините, я изначально вставил неправильный блок кода! У нас это уже было, я просто вставил код «новый трек» вместо кода «редактировать трек». Он отлично обновляет все остальное (заголовок, описание и т.д.), Но не изображение обложки: ( Я обновил свой исходный пост правильным кодом.
Ответ №2:
Согласно документам, для загрузки можно использовать только artwork_data, никаких обновлений ни для аудиофайла, ни для иллюстрации.
В полях artwork_data и asset_data есть комментарий «только для загрузки»
Ссылка:https://developers.soundcloud.com/docs/api/reference#tracks
Ответ №3:
Удалите все ваши временные файлы Интернета и кэша. На самом деле это может измениться для всех, кроме вас.
Комментарии:
1. Не могли бы вы уточнить, как это решило бы проблему?
Ответ №4:
Есть трюк, который обычно работает. В Soundcloud API может быть несколько неаккуратное кодирование. Попробуйте отредактировать всю URL-ссылку для целевого файла. Это должно сработать.