Возможные ошибки при обмене с http-сервером

<< Click to Display Table of Contents >>

Navigation:  API MasterSCADA 4D > Подключение к исполнительной системе по JSON > JSON для HTTP-запросов >

Возможные ошибки при обмене с http-сервером

В случае общей ошибки метода возвращается HTTP код 200 со следующим содержимым:

{"code", - код ошибки

"errorText" - пользовательское описание ошибки

}

Если метод выполнен успешно, возвращается HTTP ответ с кодом 200, в ответном JSON объекте задается поле "code":0

Коды ошибок из стандарта OPC UA:

OpcUa_BadUnexpectedError - 0x80010000.

OpcUa_BadInternalError 0x80020000 - внутренняя ошибка сервера.

OpcUa_BadSyntaxError 0x80B60000 - запрос JSON не может быть разобран парсером JSON, также может вызываться по запросу CreateMonitoredEvents, если есть ошибки в условии фильтра.

OpcUa_BadMethodInvalid 0x80750000 - метод запроса не опознан.

OpcUa_BadEncodingLimitsExceeded 0x80080000 - ответный пакет превышает ограничение по размеру пакетов.

OpcUa_BadSubscriptionIdInvalid  0x80280000 - передан недействительный код подписки.

OpcUa_BadMonitoredItemIdInvalid 0x80420000 - в DeleteMonitoredEvents/DeleteMonitoredDataItems передан недействительный ID параметра/выборки.

OpcUa_BadNodeIdUnknown 0x80340000 - в CreateMonitoredDataItems/WriteData/CallPOU переданы недействительные адреса переменных (код возвращается отдельно по каждому узлу).

OpcUa_BadTooManySubscriptions 0x80770000 - превышен лимит подписок (сейчас не ограничен).

OpcUa_BadTimeout 0x800A0000 - превышен таймаут (если в ходе обработки запроса выполняются синхронные обработки, например, в архиве, и они не уложились в отведенное время).

OpcUa_BadConditionNotShelved 0x80D20000 - AcknowledgeEvents - сообщение не может быть квитировано, так как по нему уже было выдано новое.

OpcUa_BadConditionBranchAlreadyAcked 0x80CF0000 - AcknowledgeEvents - сообщение не может быть квитировано, так как уже квитировано ранее.

OpcUa_BadFilterOperandInvalid 0x80490000 - может вызываться по запросу CreateMonitoredEvents, если есть ошибки в условии фильтра.

OpcUa_BadUserAccessDenied 0x801F0000 - в Login переданы неверные учетные данные.

OpcUa_BadUserAccessDenied_PasswordExpired 0x801F0001 - в Login передан правильный логин/пароль, но срок действия пароля истек, необходима смена пароля.

OpcUa_BadUserAccessDenied_UserBlocked 0x801F0002 - в Login передан правильный логин/пароль, но пользователь заблокирован.

OpcUa_BadUserAccessDenied_NotAllowedTime 0x801F0003 - попытка Login в неустановленный для данного пользователя диапазон рабочего времени.

OpcUa_BadUserAccessDenied_NotAllowedAddress 0x801F0004 - попытка Login с незаданного адреса клиента для данного пользователя.

OpcUa_BadUserAccessDenied_NeedChangePassword 0x801F0005 - необходимо сменить пароль (установлен флаг сброса пароля).

OpcUa_BadSessionIdInvalid 0x80250000 - может возвращаться любым методом (кроме Login) в случае, если в запросе не передан корректный sessionId (или для текущей сессии окончено время сессии).

OpcUa_BadTooManySessions 0x80560000 - превышено максимальное количество подключенных клиентов.

#define OpcUa_BadServiceUnsupported 0x800B0000 - сервер не поддерживает визуализацию в целом или при старте конфигурации возникла ошибка. Ошибка может возникнуть при попытке подключения к проекту (серверу), в который не была добавлена визуализация.

#define OpcUa_BadShutdown 0x800C0000 - сервер находится в состоянии перезагрузки конфигурации.

#define OpcUa_BadDataUnavailable 0x809E0000 - подключение к БД или стороннему серверу недоступно.

OpcUa_BadNotFound 0x803E0000 - возвращает GetTaskStatistics, если не удалось найти задачу.