Jump to content

Kenneth

uniGUI Subscriber
  • Posts

    156
  • Joined

  • Last visited

Posts posted by Kenneth

  1. var h:THTTPClient; R:IHTTPResponse; s:TStringStream;
    begin
       h:=THTTPClient.Create;
       s:=TStringStream.Create;
       try
         R:=h.Get('http://google.com/yourQuery', s);
         if R.StatusCode = 200 then
           s.DataString;  //<--- your JSON request
       finally
         FreeAndNil(h);
         FreeAndNil(s);
       end;
    end;

     

    • Like 1
  2. Все вопрос решен! Разобрался. 

    Если кто из знатоков читает, прошу еще совета или подсказки. Можно ли обычное десктопное приложение привязать к числу получающих уведомление от СерверМодуля? Кидал на форму TUniWebSocket и прописывал адрес url, ставлю актив, все как в вэб приложении, но ничего не происходит, он не коннектится к серверу. Есть ли какие у кого мысли по этому поводу. Задача стоит получать уведомления с сервера на десктопном VCL приложении.

  3. Всем доброго дня! Вот решил в своем проекте вебсокеты использовать, и возникли еще вопросы. Я получаю информацию об изменении таблицы в ServerModule, и там же пытаюсь сообщить всем (взято с примера):

    procedure TUniServerModule.BroadCast(AContext: TIdContext; AMsg: String);
    var
      AC: TIdContext;
      L:TList;
      i:integer;
    begin
      L:=Srv.Contexts.LockList;
      try
      for i := 0 to L.Count - 1 do
      begin
        AC := L[i];
        SendSocketMessage(AC,AMsg);
      end;
      finally
       Srv.Contexts.UnlockList;
      end;
    end;

    Но проблема в том, что он всем сокетам подряд отправляет. А мне нужно только тем у кого открыта сессия в данный момент. Можно ли как то через TIdContext узнать висит ли на нем активная сессия или нет? Или как то добраться до сессии. Если нет сиссий, то я бы не отправлял на него сообщение.

  4. @stas спасибо за пример. Но сейчас столкнулся с одной проблемой. Клиенты могут отправлять друг другу сообщения со своих сессий, здесь проблем нет, но вот никак не могу отправить сообщение с СерверМодуля. Если кидаю компонент TUniWebSocket на СерверМодуль, то при запуске вылетает с ошибкой. Каким образом можно отправить сообщение именно с СерверМодуля, у меня основные изменения с базой происходят именно здесь.

    П.С. Все разобрался:

    UniServerModule.BroadCast(nil, 'Сообщение');

     

  5. Всем привет.

    Загружаю на сервер изображение, для того чтобы показать его в гриде через OnFieldImageURL, как сделать чтобы изображение сразу отобразилось в поле, после загрузки. Оно показывает только после обновления страницы. 

    Спасибо.

  6. On 11/23/2019 at 7:31 PM, elGringo said:

    Our government told that we have to move to national software to that is in registry of government to 2021 year. And in this registry only one operational system - Linux. So, we have 2 years to do smth.

    @elGringo In what government such requirements?

  7. Всем привет. 

    Столкнулся с такой проблемой, если в TUnimImage.Url указываю относительный путь к файлу, который находиться в той же папке или во вложенной, то проблем нет. Но если файл находится в папке выше, то изображение не загружается. Например вот такой путь '../files/img/27.jpg'.

    Вопрос: как указать относительный путь к файлу, находящийся в папке выше текущей?

  8. @stas, @zilav спасибо что уделили время и так подробно ответили. Я все понял, моя проблема, что немного узко мыслил. Мне то всего лишь надо было обновлять датасеты, раньше это делалось в пару действий, а тут как то внутренне не принималось, что еще что то нужно делать. Ну раз уж такие возможности открываются, думаю нужно освоить и это. Помню еще в 2008 через сокеты имел дело с примером чата внутри сети. 

    Всем Спасибо.

×
×
  • Create New...