Posted 23 февраляFeb 23 comment_200468 Основной массив фотоконтента хранится на сервере Дискорда. Удобно одно фото использовать для информации на сайте и в группе Дискорд. Но Дискорд обновил вложения и видоизменил ссылки. Соответственно, все темы на форуме стали безликими. Учитывая большой обьем тем, есть ли вариант некой замены ссылок? Фото в дискорде остались на месте, а вот на форуме теперь Edited 23 февраляFeb 23 by t_reks
23 февраляFeb 23 comment_200469 7 минут назад, t_reks сказал: Но Дискорд обновил вложения и видоизменил ссылки. Discord специально так сделали, чтобы их перестали использовать в качестве хранилища файлов. Единственный вариант обойти эту проблему — попробовать написать бота, который будет мониторить ссылки в Discord и подавать новые аргументы с ограниченным сроком действия, и отдавать это в расширение движка форума. Вопрос в другом, изображения публиковались с одного сервера или с разных? Тогда такой вариант не подойдёт. 13 минут назад, t_reks сказал: Учитывая большой обьем тем, есть ли вариант некой замены ссылок? Через БД это будет вряд ли эффективно, а выяснять, к какому сообщению принадлежит вложение в Discord, может быть дорого с точки зрения производительности и перезалить путём редактирования записи. Единственный вариант, который я вижу. Разработчики Discord говорили, что если какие-то файлы размещались у них «для постоянного хранения», то их надо было перезалить себе в другое место до конца 2023 (фактически до начала февраля 2024, у меня с этого момента перестали ссылки на cdn.discordapp.com без аргументов работать).
23 февраляFeb 23 Author comment_200471 До https://media.discordapp.net/attachments/733405142891888672/733405660573728768/1.jpg После https://media.discordapp.net/attachments/733405142891888672/733405660573728768/1.jpg?ex=65ea163f&is=65d7a13f&hm=a1661e51999a5b1abe9d65f7a97b2e9f50b13266b526cfebdfc2e3ac7c9ad9f4&=&format=webp 5 минут назад, Chrome-Vanadium сказал: Discord специально так сделали, чтобы их перестали использовать в качестве хранилища файлов. Единственный вариант обойти эту проблему — попробовать написать бота, который будет мониторить ссылки в Discord и подавать новые аргументы с ограниченным сроком действия, и отдавать это в расширение движка форума. Вопрос в другом, изображения публиковались с одного сервера или с разных? Тогда такой вариант не подойдёт. с одного сервера, и все фото на сервере остались ... но можно исправить десяток тем руками, но сотни ... плюс как найти зависимость в том же Дискорде ...
23 февраляFeb 23 comment_200472 1 минуту назад, t_reks сказал: До https://media.discordapp.net/attachments/733405142891888672/733405660573728768/1.jpg После https://media.discordapp.net/attachments/733405142891888672/733405660573728768/1.jpg?ex=65ea163f&is=65d7a13f&hm=a1661e51999a5b1abe9d65f7a97b2e9f50b13266b526cfebdfc2e3ac7c9ad9f4&=&format=webp выше Chrome-Vanadium верно ответил. Они сделали временные ссылки. Я думал, если они например поменяли media.discordapp.net на например cdn.discord.com, то запросом можно было бы изменить ссылки в постах. В данном случае готового простого решения нет. Рекомендую все файлы заливать к себе на сервер. Так надежнее.
23 февраляFeb 23 comment_200473 4 минуты назад, t_reks сказал: плюс как найти зависимость в том же Дискорде media.discordapp.net/attachments/<id канала>/<id сообщения>/<название файла и расширение> — путь к вложению. discord.com/channels/<id сервера>/<id канала>/<id сообщения> — путь к сообщению.
23 февраляFeb 23 Author comment_200474 4 минуты назад, HooLIGUN сказал: Они сделали временные ссылки. через время они опять изменятся?
23 февраляFeb 23 comment_200475 1 минуту назад, t_reks сказал: через время они опять изменятся? Да, со временем они перестают действовать и нужно заново обновлять.
23 февраляFeb 23 comment_200476 1 минуту назад, t_reks сказал: через время они опять изменятся? на 90% уверен, что да Полагаю, что в параметрах зашит срок жизни данной ссылки. ex=65ea163f&is=65d7a13f&hm=a1661e51999a5b1abe9d65f7a97b2e9f50b13266b526cfebdfc2e3ac7c9ad9f4&=&format=webp
23 февраляFeb 23 Author comment_200477 12 минут назад, Chrome-Vanadium сказал: media.discordapp.net/attachments/<id канала>/<id сообщения>/<название файла и расширение> — путь к вложению. discord.com/channels/<id сервера>/<id канала>/<id сообщения> — путь к сообщению. это решение для новых постов, так палагаю? так как хоть фото и хранятся на одном сервере дискорда, за 4 года там ничего толком не найти а если надо найти и вписать ID, то это рутина, которую уже надо делать с заливкой на свой хост
23 февраляFeb 23 comment_200478 8 минут назад, t_reks сказал: это решение для новых постов, так палагаю? Для всех постов. Если тебе нужно массово спарсить канал, у твоего бота должно быть разрешение на «чтение истории сообщений». Затем ему загоняешь команду, которая запрашивает сообщения с даты по дату. В ответ получаешь массив объектов сообщений, из которого можно выдернуть массив объектов вложений. По идее, это должно вернуть ссылки на изображения с проставленными expire-данными. На деле не проверял, в программе, где мне потребуется это реализовать, ещё не дошёл до этого. UPD: ссылки на документацию к Discord API поело, смотреть тут: discord.com/developers/docs/resources/channel#get-channel-messages discord.com/developers/docs/resources/channel#attachment-object Edited 23 февраляFeb 23 by Chrome-Vanadium
26 февраляFeb 26 Author comment_200573 Так как вариант с ботом туманный, и не понятно, кто готов взяться за это, а сайт должен быть рабочим, пришлось все темы перебирать и восстанавливать ... Вопрос -после удаления более 50 комментов, содержащих фото, не уходит с главной всплывающее меню Кеш обновил, сами сообщения через панель модератора удалил ... эта хрень после обновления страницы опять всплывает ... Как исправить? Edited 26 февраляFeb 26 by t_reks
27 февраляFeb 27 comment_200577 Почистить кеш в браузере и в админцентре пробовали? Теперь руками восстанавливать картинки, удалив предварителньо неактуальные неинтересные темы. Админская стезя, она такая.
27 февраляFeb 27 Author comment_200609 18 часов назад, Zero108 сказал: Почистить кеш в браузере и в админцентре пробовали? АЦ чистил, толку ноль браузер почистил, вроде помогло, спасибо!
23 мартаMar 23 comment_201622 В 23.02.2024 в 16:45, t_reks сказал: так как хоть фото и хранятся на одном сервере дискорда, за 4 года там ничего толком не найти На днях мне написали, что появился сервис, который hotlinking восстанавливает. cdn.discordapp.com или media.discordapp.net меняешь на cdn.discordapp.xyz и ссылки восстанавливаются. Edited 23 мартаMar 23 by Chrome-Vanadium
29 мартаMar 29 Author comment_201883 В 23.03.2024 в 16:55, Chrome-Vanadium сказал: На днях мне написали, что появился сервис, который hotlinking восстанавливает. cdn.discordapp.com или media.discordapp.net меняешь на cdn.discordapp.xyz и ссылки восстанавливаются. не совсем понял, где что менять, но руками каждую ссылку можно и так восстановить, так как сами ссылки внутри дискорда остались рабочими. А вот вне диса, как ответила поддержка, они не хостинг для фото.
30 мартаMar 30 comment_201923 В 29.03.2024 в 14:08, t_reks сказал: не совсем понял, где что менять, но руками каждую ссылку можно и так восстановить, так как сами ссылки внутри дискорда остались рабочими. Да можно по всей базе пройтись заменой cdn.discordapp.com/media.discordapp.net на cdn.discordapp.xyz, не парясь насчёт ручного редактирования каждого поста. Опять же, не забываем про бэкапы. https://stackoverflow.com/questions/11839060/ Edited 30 мартаMar 30 by Chrome-Vanadium неполный ответ.
31 мартаMar 31 Author comment_201935 Chrome-Vanadium спасибо, это реальное решение, жаль, но уже всё заменили руками ... муторно, но командой справились. Edited 31 мартаMar 31 by t_reks
1 апреляApr 1 comment_201947 В 30.03.2024 в 16:35, Chrome-Vanadium сказал: Да можно по всей базе пройтись заменой cdn.discordapp.com/media.discordapp.net на cdn.discordapp.xyz, не парясь насчёт ручного редактирования каждого поста. Опять же, не забываем про бэкапы. https://stackoverflow.com/questions/11839060/ дай бог тебе здоровье хороший человек!
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.