Управление BAS из вне



  • @Fox Спасибо выручил по больше бы таких примеров



  • @Fox said in Управление BAS из вне:

    127.0.0.1:3000/quit?pr1=1&pr2=2&pr3=3

    а как убрать таймаут в ноде чтобы ждал бесконечно, есть варианта без опроса в цикле?



  • 0_1521999720245_test242-получаем-из-запроса-данные.xml
    Как то странно работает открываю в хроме http://127.0.0.1:3000/ показывает цифру 1 обновляю тоже показывает 1 открываю браузер инкогнито показывает 2 обновляю тоже показывает 2 закрываю обновляю на обычной версии показывает 3 потом обновляю в инкогнито показывает 4 если обновить вкладку почему та не срабатывает скрипт



  • @GamiD Смотри, строчка:

    res.send("="+[[NEW_VARIABLE]]+"=");
    

    Говорит, что твой сервер будет отдавать данные, то есть рисовать страничку.
    Далее у тебя в скрипте стоит Увеличить переменную, которую ты показываешь на этой странице.
    Получается ты заходишь на страницу и получаешь значение [[NEW_VARIABLE]], чтобы сработал await должна сработать функция app.get('/',, которая ждёт после адресса слеш:

    http://127.0.0.1:3000/
    


  • Интересная особенность сервера в том, что после запуска в BAS он работает автономно. То есть скрипт в BAS выполняет следующие любые действия, а сервер при этом работает независимо от скрипта.

    Вот тестовый скрипт с простым счётчиком.
    0_1522005582778_на форум 4.png


    Запустите скрипт в режиме записи, выполните экшен node js и пока не закроете скрипт счётчик будет работать.



  • Кстати можно и без await:

        var i = 0;
        var express = require('express');
        var app = express();
        app.get('/1', function (req, res) {
            res.send('<a href="http://127.0.0.1:3000/1">http://127.0.0.1:3000/1</a> ='+ i +'=');
            ++i;
            console.log('Next');
    
        });
    
    var server = app.listen(3000, function () {
             console.log('Example app listening http://127.0.0.1:3000/1');
        });
    

    Интересно как можно получать данные из сервера node js в BAS на живую...



  • Оказалось что получать данные из сервера node js можно через глобальные переменные node js :D.
    0_1522010788590_на форум2.gif



  • This post is deleted!


  • @GamiD На будущие, когда написали пост, перечитайте его сами, всё ли вы понятно объяснили?
    Скиньте скрипт, а то по сообщениям будем долго гадать.



  • @Fox Исправлюсь =) запускаю 2 потока на первом потоке скрипт работает без сервера с переменными во втором потоке запускается node, после запуска сервера первый поток перестает работать когда открываешь адрес http://127.0.0.1:3000 второй поток где есть node перезагружается тогда работает несколько секунд первый поток и обратно зависает
    тоесть зависает полностью бас



  • @GamiD Вы же читали выше?

    При попытке запуска двух серверов (например, в многопотоке) – будет конфликт портов и ошибка.

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



  • @Fox А я не запускаю 2 сервера а сервер запускается только во втором потоке а первый поток получает данные через http клиент и записывает в текстовый файл а второй поток где запускается сервер он читает данные из текстового файла и выводит через сервер



  • @Fox второй поток где у меня запускается сервер он делает так читает 3 файла через for и проверяет есть там текст который нужен или нет если есть идет дальше и запускает сервер если нет проверяет постоянно вот во время проверки бас зависает как только я в ручную добавляю в текстовый файл нужный текст сразу бас оживляется и после того как доходит обратно до проверки текста зависает завтра покажу проект



  • @GamiD Вы предлагаете мне писать тестовый скрипт по вашему сообщению? Серьёзно?



  • @Fox да нет просто смысл скрипта написал сам скрипт вечером покажу



  • @Fox said in Управление BAS из вне:

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

    если убрать задержку во втором потоке зависает =)



  • @GamiD Вот код второго потока, как думаете, почему без задержки скрипт зависает?
    0_1522180466960_на форум 6.png

    Вот скрипт с этим же бесконечным циклом и выводом в лог надписи test. В режиме запуска зависает. Но какое отношение это имеет к серверу на node js?



  • @Fox Без понятия какое отношение имеет но зависает без задержки с задержкой нет



  • @GamiD Это последнее моё off-top сообщение в этой ветке.

    Вот скрипт с этим же бесконечным циклом и выводом в лог надписи test.

    Откройте в режиме записи скрипт, выложенный выше:
    0_1522182192176_на форум 8.png

    Зависает он из за бесконечного цикла постоянного вывода в лог.


Log in to reply
 

Looks like your connection to Bablosoft was lost, please wait while we try to reconnect.