Инициализация API в веб-плагине

Стартовая страница Форумы Разработка и интеграция Инициализация API в веб-плагине

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Автор
    Сообщения
  • #38165
    akofor@mail.ru
    Участник

    Ранее здесь была тема про взаимодействие плагина и модуля, нашел примеры использования API и захотел их применить в своем плагине
    Плагин компилируется в .dll, который я помещаю в ScadaWeb
    Внутри плагина есть Areas/Flegma/Pages/MyPage.cshtml
    Сделал по аналогии с примерами https://github.com/RapidScada/scada-v6/tree/master/ScadaWeb/OpenPlugins/PlgMain/wwwroot/custom:

    @page
    @model Scada.Web.Plugins.PlgFlegma.Areas.Flegma.Pages.MyPageModel

    <div id=»divDescr1″></div>
    <div id=»divData1″></div>

    @section Scripts {

    <script src=»~/js/scada-common.js»></script>
    <script src=»~/lib/jquery/dist/jquery.min.js»></script>
    <script src=»~/plugins/Main/js/main-api.js» asp-append-version=»true»></script>

    <script>

    document.addEventListener(«DOMContentLoaded», function() {
    const mainApi = new MainApi({
    rootPath: «/»
    });

    const CNL_NUM = 101;
    const REFR_RATE = 1000;

    function updateData() {
    mainApi.getCurData(CNL_NUM, function(dto) {
    if (dto && dto.ok) {
    const val = dto.data[0].val;
    const stat = dto.data[0].stat;
    document.getElementById(«divData1»).innerHTML =
    Value: ${val}<br>Status: ${stat};
    }
    setTimeout(updateData, REFR_RATE);
    });
    }

    updateData();
    });
    </script>
    }

    Однако в веб-станции вижу пустую страницу, в анализе сети (F12- Network) загружается только MyPage, .js никаких не погружает

    Если перейду напрямую http://localhost:10011/Api/Main/GetCurData?cnlNums=101 (у меня вебстанция на 10011), то вижу корректную информацию {«data»:[{«cnlNum»:101,»val»:1,»stat»:1}],»ok»:true,»msg»:»»}

    Хочу узнать, где ошибка в коде страницы…

    #38172
    Mikhail
    Модератор

    Добрый день!
    Откройте код страницы в браузере по правой кнопке для проверки.

    #38179
    akofor@mail.ru
    Участник

    <div id=»divDescr1″></div>
    <div id=»divData1″></div>

    весь код)

    #38200
    Mikhail
    Модератор

    Выглядит некорректно. Сравните с кодом других плагинов, например.

    #38209
    akofor@mail.ru
    Участник

    В коде страницы других плагинов есть нужные строчки:

    <script src=»/lib/jquery/dist/jquery.min.js»></script>
    <script src=»/lib/bootstrap/dist/js/bootstrap.bundle.min.js»></script>
    <script src=»/js/scada-common.js?v=i3sMGtyt1lTSEf8acito3jEoqwdRCOMBEnhlW9xK8HU»></script>
    и тд

    #38220
    Mikhail
    Модератор

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

    #38224
    akofor@mail.ru
    Участник

    Я примерно это и сделал — взял из существующих плагинов часть кода, отвечающую за API, и вставил в свою… Просто из существующих плагинов есть только служебные по типу PlgMain, PlgChart, достаточно проблематично будет из них вычленить отдельную страницу для тестирования

    #38229
    Mikhail
    Модератор

    Отладкой обычно занимается сам разработчик.

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Вы должны авторизироваться для ответа в этой теме.