1 / 1 / 0
Регистрация: 07.04.2019
Сообщений: 2
|
||||||||||||||||
1 | ||||||||||||||||
Не могу разобраться с авторизацией для IP камеры по ONVIF07.04.2019, 18:42. Показов 8008. Ответов 2
Всем привет.
Пишу небольшое клиент приложение, которое будет опрашивать IP камеру, через протокол ONVIF, и столкнулся с ошибкой. Нужно использовать только С++, без использования gSOAP. Использую примеры из этой ссылки(ONVIF Programmers guid) Камеры, которые не защищены паролем, и соответственно не требуют формирования данных для авторизации, отвечают корректно. Проблема с которой я столкнулся заключается в формировании данных для авторизации. При отправки любого запроса на камеру(например GetProfiles), камера всегда отвечает 400 ошибкой. Вот пример запроса:
Согласно пункту "6.1.1.3" из документации выше, нужно сформировать "Digest" следующим образом: Digest = B64ENCODE( SHA1( B64DECODE( Nonce ) + Date + Password ) ) Свой код я привел ниже. Функции B64DECODE, SHA1 и B64ENCODE работаю корректно, проверял сравнивая с разными онлайн генераторами. Параметр Nonce пробовал задавать разными способами. Пока что всё безрезультатно. Думаю, что ошибка кроется именно в работе с параметром, который посылаю в функцию SHA1(), но могу ошибаться. Кто-нибудь может сказать, в чём может быть причина ошибки? Выкладываю не весь код, а только ту часть, которая связана с формированием нужных данных. Способ отправки\получения и формирования других данных работает отлично на не закрытых камерах. Отличие только в строках пароля. Буду благодарен за любую помощь. Вот код:
1
|
07.04.2019, 18:42 | |
Ответы с готовыми решениями:
2
Не могу разобраться с авторизацией Не могу разобраться с авторизацией из БД не могу разобраться с авторизацией Вручайте не могу разобраться с авторизацией |
Модератор
3401 / 2172 / 353
Регистрация: 13.01.2012
Сообщений: 8,419
|
||||||
08.04.2019, 09:10 | 2 | |||||
Сообщение было отмечено AlexVenkov как решение
Решение
AlexVenkov, через 30 мин буду на работе скину работающий код
Добавлено через 55 минут AlexVenkov, код с некоторым количеством вспомогательных функций
1
|
1 / 1 / 0
Регистрация: 07.04.2019
Сообщений: 2
|
|
10.04.2019, 15:06 [ТС] | 3 |
vxg,
Воу! Большое спасибо, очень выручили. И, судя по всему, мне пора снова идти учить мат.часть.
0
|
10.04.2019, 15:06 | |
10.04.2019, 15:06 | |
Помогаю со студенческими работами здесь
3
Поворот камеры. Не могу разобраться Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи | |||||
Как написать микросервис на Go/Golang
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang
Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
|
Как написать микросервис с нуля на C#
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
|
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
|
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
|
Как создать игру "Танчики" на Unity3d и C#
InfoMaster 14.01.2025
Разработка игр – это увлекательный процесс, сочетающий в себе творчество и технические навыки. В этой статье мы рассмотрим создание классической игры "Танчики" с использованием Unity3D и языка. . .
|
Организую платный онлайн микро-курс по доработке Android-клиента Telegram
_Ivana 14.01.2025
Официальная версия и распространенные форки не полностью устраивают? Сделай свою кастомную версию клиента!
4 занятия по 2 часа (2 недели пн, ср 19:00-21:00 по Москве).
Первое вводное занятие. . .
|
Как создать приложение для фитнеса для iOS/iPhone на Kotlin
InfoMaster 14.01.2025
Создание собственного фитнес-приложения — это не только захватывающий, но и полезный процесс, ведь оно может стать вашим верным помощником на пути к здоровому и активному образу жизни. В современных. . .
|
Как создать приложение магазина для iOS/iPhone на Swift
InfoMaster 14.01.2025
Введение в разработку iOS-приложений
Разработка приложений для iPhone и других устройств на базе iOS открывает огромные возможности для создания инновационных мобильных решений. В данной статье мы. . .
|
Это работает. Скорость асинхронной логики велика. Вопрос видимо останется в стабильности. Плата - огонь!
Hrethgir 13.01.2025
По прошлому проекту в Logisim Evolution https:/ / www. cyberforum. ru/ blogs/ 223907/ blog8781. html прилагаю файл архива проекта в Gowin Eda. Восьмибитный счётчик из сумматора+ генератор сигнала. . .
|
UserScript для подсветки кнопок языков программирования в зависимости от текущего раздела
volvo 13.01.2025
В результате работы этого скрипта подсвечиваются нужные кнопки не только в форме быстрого ответа, но и при редактировании сообщения:
/ / ==UserScript==
/ / @name CF_DefaultLangSelect
/ / . . .
|
Введение в модели и алгоритмы машинного обучения
InfoMaster 12.01.2025
Машинное обучение представляет собой одну из наиболее динамично развивающихся областей искусственного интеллекта, которая фокусируется на разработке алгоритмов и методов, позволяющих компьютерам. . .
|
Как на Python создать нейросеть для решения задач
InfoMaster 12.01.2025
В контексте стремительного развития современных технологий особое внимание уделяется таким инструментам, как нейросети. Эти структуры, вдохновленные биологическими нейронными сетями, используются для. . .
|