Версия:

Как разрабатывать

Во вложенных разделах вы можете подробно прочитать о всем необходимом. Кроме прикладных статей в данном разделе, ознакомьтесь с другими разделами данной документации для большего понимания принципов работы, существующих механизмах и принятых соглашений.

Полезно

Ниже описаны моменты, которые также встречаются в других статьях документации, но могут быть полезны вам прямо сейчас:

Просмотр обмена клинтской части приложения с сервером.

Для того чтобы в консоле браузера (DevTools) выводился обмен запросами через функцию api (в прошлом socketQuery), необходимо в этой консоле единажды вызвать функцию:

debug()
// Выведет debug mode ON'

после этого перезагрузить страницу. Режим запоминается в cookies.

Вывод в консоль для одного метода состоит из двух групп:

Пример ➢ User ➢ get_me

{
    "command": "get_me",
    "object": "User",
    "params": {
        "getRoles": false
    }
}

Пришел ответ ➢ User ➢ get_me

// Объект с запросом (дублируется, так как исходящий объект (салатовый), мог затеряться вверху, так как запросов может быть много и они независимы.
{
    "command": "get_me",
    "object": "User",
    "params": {
        "getRoles": false
    }
}
// Объект с ответом
{
    "time": 3,
    "start": 1773213403269,
    "toastr": {
        "type": "success",
        "message": "noToastr",
        "title": "Ок"
    },
    "data": {
        "user": {
            "id": 1,
            "firstname": "Ivan",
            ...
        },
        "message_en": "noToastr"
    },
    "errName": "noToastr",
    "type": "success",
    "code": 0,
    "msg": "noToastr",
}

Подробно о соединении клиента с сервером смотри в разделе API и go_core_query

Вызов методов из консоли

Во встроенном в ядро интерфейсе, api доступно как глобальная переменная, а следовательно ее можно использовать прямо из консоли браузера (DevTools). Чтобы запрос был авторизован, сперва авторизируйтесь в интерфейсе. Далее заголовок авторизации будет подключаться автоматически при установке соединения сокета. Пример использования:

api({
    command: 'getMe',
    object: 'User'
})