Обработка ошибок
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Используйте код состояния 400 Bad Request
для всех ошибок, определенных в этой спецификации. Для всех остальных ошибок производители должны использовать ошибки в диапазоне 4XX для ошибок клиента и в диапазоне 5XX для ошибок сервера. Для всех случаев ошибки ответ всегда должен включать тело JSON в следующем формате:
{
"name": "camera.info",
"state": "error",
"error": {
"code": "serverError",
"message": "cannot get camera info."
}
}
-
name
может быть любым из camera.info
, camera.state
, camera.checkForUpdates
, camera.commands.status
и camera.commandName
. -
code
должен быть одним из следующих для кода состояния 400: unknownCommand
, cameraInExclusiveUse
, missingParameter
, invalidParameterName
invalidParameterValue
. -
message
определяется производителями и не должно быть локализованным сообщением.
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-25 UTC.
[null,null,["Последнее обновление: 2025-07-25 UTC."],[[["\u003cp\u003eAlways use the \u003ccode\u003e400 Bad Request\u003c/code\u003e status code for errors defined in the specification and appropriate 4XX or 5XX codes for other client or server errors, respectively.\u003c/p\u003e\n"],["\u003cp\u003eAll error responses must include a JSON body with \u003ccode\u003ename\u003c/code\u003e, \u003ccode\u003estate\u003c/code\u003e, and an \u003ccode\u003eerror\u003c/code\u003e object containing \u003ccode\u003ecode\u003c/code\u003e and \u003ccode\u003emessage\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eerror.code\u003c/code\u003e field uses predefined values for 400 errors (\u003ccode\u003eunknownCommand\u003c/code\u003e, \u003ccode\u003ecameraInExclusiveUse\u003c/code\u003e, \u003ccode\u003emissingParameter\u003c/code\u003e, \u003ccode\u003einvalidParameterName\u003c/code\u003e, \u003ccode\u003einvalidParameterValue\u003c/code\u003e) while manufacturers define the \u003ccode\u003eerror.message\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003ename\u003c/code\u003e field identifies the specific request, such as \u003ccode\u003ecamera.info\u003c/code\u003e or \u003ccode\u003ecamera.commands.status\u003c/code\u003e, associated with the error.\u003c/p\u003e\n"]]],["Error responses must include a JSON body with \"name,\" \"state,\" and \"error\" fields. For specified errors, use the `400 Bad Request` status code, otherwise, employ 4XX for client and 5XX for server errors. The \"name\" field can be one of several camera-related identifiers. \"Code\" within the error object must be one of five predefined error codes for 400 responses. The \"message\" field is free-form, manufacturer-defined, and non-localized.\n"],null,["# Error handling\n\nUse the `400 Bad Request` status code for all errors defined in this specification. For all other errors, manufacturers should use errors in the 4XX range for client errors, and the 5XX range for server errors. The response should always include a JSON body in the following format for ***all*** error cases: \n\n {\n \"name\": \"camera.info\",\n \"state\": \"error\",\n \"error\": {\n \"code\": \"serverError\",\n \"message\": \"cannot get camera info.\"\n }\n }\n\n- `name` can be any of `camera.info`, `camera.state`, `camera.checkForUpdates`, `camera.commands.status`, and `camera.commandName`.\n- `code` should be one of the following for 400 status code:`unknownCommand`, `cameraInExclusiveUse`, `missingParameter`, `invalidParameterName`, or `invalidParameterValue`.\n- `message` is defined by manufacturers and is not expected to be a localized message."]]