Как получить изображение из защищенной области HTTP-аутентификации? - PullRequest
1 голос
/ 05 февраля 2012

У меня есть веб-камера (D-LINK DCS-2130) и веб-сайт. У камеры нет опции «Гость» (или я не нашел, где она?), Поэтому мне нужно авторизовать свой сайт для показа изображения с камеры. Как правильно отобразить изображение?

У меня есть 2 идеи:

  1. Создайте getImage.php, который будет отправлять логин + пароль (cURL) на камеру и получить изображение. В коде моего сайта я буду использовать src="getImage.php"
  2. Создайте тот же getImage.php, который будет отправлять login + pass (cURL), получать изображение, сохранять его локально в /myCameraSnapshots/Image.jpg wait() 1 секунду, затем получать новое изображение и перезаписывать его локально.

Первый способ будет выполнять много запросов к камере (1 зритель - 1 запрос), второй будет загружать процессор моего сервера, но не будет мешать авторизации камеры.

Надеюсь, вы можете сказать: «Ты идиот! Есть простой способ получить изображение из защищенной папки! Просто сделай ...»;)

Ответы [ 2 ]

0 голосов
/ 06 февраля 2012

Я нашел пароль гостя для этой камеры (гость: гость), поэтому моя проблема решена, но в любом случае все должны прочитать ответы, в них Вы можете найти ответы на Ваши вопросы!

0 голосов
/ 05 февраля 2012

Предполагая, что вы делаете правильную авторизацию в getImage.php, второй метод (с использованием кэша), вероятно, будет более эффективным.

Если getImage.php использует заголовок Content-Type, просто поместите /myCameraSnapshots из корня веб-сервера (или ограничьте его только локальным доступом), а затем используйте readfile, если необходимо, для выгрузки содержимого при вызове. .

В зависимости от того, как часто изображения на камере меняются, вам также понадобится метод для аннулирования кэшированного изображения (возможно, путем его удаления), который должен запросить getImage.php запросить его снова с камеры.

...