Использование горячих ссылок изображения аватара Твиттера?

Программный интерфейс Твиттера возвращает это значение для аккаунта в Твиттере 'image_url': http://a1.twimg.com/profile_images/75075164/twitter_bird_profile_bigger.png

В моем клиентском веб-приложении Твиттера я считаю использование горячих ссылок версией HTTPS аватаров, которая размещается на Amazon S3: https://s3.amazonaws.com/twitter_production/profile_images/75075164/twitter_bird_profile_bigger.png

Какие-либо лучшие практики, которые отговорили бы меня делать это? Третья сторона клиентские приложения Твиттера обычно размещает их собственные копии аватаров?

Править: Для разъяснения я должен использовать HTTPS для изображений, потому что мое веб-приложение будет использовать Подключение HTTPS, и я не хочу, чтобы мои пользователи получили предупреждения системы безопасности от своего браузера о странице, содержащей некоторое содержание, которое не аутентифицируется. Например, Firefox, как известно, жалуется на смешанное http/https содержание.

Моя проблема состоит в том, чтобы выяснить, не ли использование горячих ссылок, которое https URL запрещаются Твиттером, начиная с этих URL, "общедоступно" от их API. Я получил их путем анализа их веб-клиента источник HTML при соединении с моим аккаунтом в Твиттере в HTTPS.

6
задан Franck 4 February 2010 в 11:13
поделиться

2 ответа

Думаете ли вы сохранить URL-адрес изображения в вашем приложении или получить его для пользователя, как это требуется?

Если это последний вариант, то я не вижу проблемы с горячей связью изображений. Если вы храните URL изображения в вашей собственной системе, то я вижу, что у вас сломаны ссылки при каждом изменении изображений (я уверен, что в какой-то момент в будущем они изменят URL).

Редактируйте

Хорошо, теперь я вижу вашу дилемму. Я просмотрел API-документы и, кажется, не слишком много с точки зрения возможности получения изображений, обслуживаемых в HTTPS или получения URL изображения Amazon S3. Возможно, вы могли бы написать обработчик на вашем собственном сервере, который, по сути, будет кэшировать и повторно обслуживать HTTP-изображение как HTTPS, однако это немного неоправданная нагрузка на ваши серверы. Но в этом случае я не нашел лучшего решения. GL

5
ответ дан 16 December 2019 в 21:39
поделиться
a.to_s()=~/^(1|2)$/
-121--1000971-

Вы всегда можете написать свой собственный CustomConverter .

Имеет смысл, почему Dozer не может справиться с этим, как вы ожидаете, так как во время выполнения он не имеет информации о типе Список foos и не может гарантировать, что каждый объект в списке на самом деле является Foo .

-121--4501544-

Зачем копировать изображение в собственное веб-пространство? Это увеличит стоимость полосы пропускания и приведет к проблемам с согласованием кэш-памяти.

Используйте URL-адрес, предоставленный API.

Я вижу, что вам может понадобиться кэшировать URL, который API возвращает в течение некоторого времени, чтобы уменьшить количество вызовов API.

Если вы пишете что-то вроде приложения для iPhone, имеет смысл кэшировать изображение локально (на телефоне), чтобы вообще избежать веб-трафика, но замена одного URL на другой URL не должна иметь значения (при условии, что сервер изображений Twitter работает надежно).

Почему требуется HTTPS?

1
ответ дан 16 December 2019 в 21:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: