Поиск сообщества
Показаны результаты для тегов 'Datasnap'.
Найдено: 7 результатов
-
Добрый всем день! Уважаемые коллеги, столкнулись с такой проблемой. Если есть DataSnap сервер, работающий в режиме Session, и клиент, написанный на Delphi с использованием TSqlConnection к серверу по протоколу DataSnap. то все работает. Т.е. клиент открывает соединение, вызывает методы сервера , при этом на сервере, в экземпляре класса ServerMethod ( живущий от Коннекта, до его закрытия) - хранятся все данные сессии, ИД клиента, его настройки и т.д., и закрыват соединение, при этом сервер уничтожает экземпляр класса ServerMethod, со всеми данными. Встал вопрос, как использовать этот же сервер, с другими клиентами, работающими по REST, например PHP, JS. У DS сервера есть rest протокол, НО! после любого обращения по REST, сервер создает и уничтожает сразу класс ServerMethod ( т.е. работает в режиме LifiCicle = Invocation, о чем честно написано в документации) Т.е. хранить данные подключения не получится. Чтобы не переписывать сервер, решили попытаться прикинуться клиентом DS. Поставили между сервером DS и клиентом DS снифер. Выяснилось, что они общаются между собой по интерфейсу tunel. т.е. вместо http://docwiki.embarcadero.com/RADStudio/Rio/en/DataSnap_REST_Messaging_Protocol надо обращаться на http://host:port/datasnap/tunnel/[ClassName]/[MethodName]/[ParamValue] вообщем там целая жизнь из команд PUT, GET.. Описания этого протока не нашел.. Может кто уже имел такой опыт по сопряжению REST клиента и DS сервера в режиме LifeCicle = Session. В приложенном файле протоколе обмена - открытие соединения c с клиента , без авторизации ( TSqConnect ) - выполнение метода LoginByKartVDevOsDOC с параметрами - внутренний логин в систему, пс. а почему txt нельзя прикрепить?? пришлось зарарить.. protokol DataSnap.rar
-
есть сервер DataSnap, если после подключения к нему клиента сервер выключит и включить снова то клиент выдает ошибку если отловив ее на клиенте делаю SQLConnection1.Connected:= False; SQLConnection1.Connected:= True; все равно не работает дальше, надо закрыть программу и снова открыть как избавится от этого? xe10.1
-
Подскажите, пожалуйста, как реализовать серверный метод, который должен выдать TList<TMyObject> ? Имеется в виду, что бы на стороне клиента получилось бы так: var FResult: TList<TMyObject>; begin //... FResult := MyServerMethod; //Серверный метод, который возвращает TList<TMyObject> //... end;
-
Здравствуйте, коллеги. При написании клиента под андроид для Datasnap сервера столкнулся с проблемой, что из телефона строки с русскими буквами уходят в нечитаемом виде на сервер. При запуске приложения под Windows проблемы нет. Даже тестовые методы, генерируемые мастером создания DataSnap сервера (EchoString, ReverseString) не работают с русским текстом при запуске клиента на андроиде. Прилагаю тестовые проекты сервера и клиента с вызовом одной только функции ReverseString - у меня все равно выходят кракозябры. Помогите разобраться, как правильно передавать строки с русскими буквами. DSTestStrAndroidServer.zip DSTestStrAndroidClient.zip
-
Добрый вечер. Только начал изучать технологию Datasnap. Разобрался с простейшим сервером и клиентом, находясь в одной сети все прекрасно работает. Но сейчас ставлю перед собой задачу, что клиенту изначально неизвестен ip сервера, но знаем что он находится в одной сети. Сразу возникает мысль послать широковещательный пакет от клиента и при получении его сервером отправить ответ. Теперь вопрос, как послать такой пакет? Если кто то может подсказать где почитать про это и посмотреть примеры, буду очень признателен.
-
Доброе время суток всем! Очень нужна помощь профессионалов, любителей и тех кто просто имеет опыт в этом деле. Пишу приложение под платформу Android и возникла потребность загружать фото на сервер приложений с устройств. Все построено на Datasnap. на клиенте ImageStream := TMemoryStream.Create; image1.Bitmap.SaveToStream(ImageStream); FileName := taskf.TASKNUMBER+'_'+AnsiReplaceStr(AnsiReplaceStr(datetimetostr(now),'.',''),':',''); Bytes := ClientModule1.ServerMethods1Client.UploadImage(FileName,ImageStream); при вызове функции загрузки падает: no mapping for the unicode character exists Что интересно : если делать по http все проходит только переключаю на https не работает... А в требованиях СИБ сами знаете.... Если кто знает в чем секрет, помогите пжл. Какая инфа нужна будет - предоставлю. Заранее сорян за косоязычность - первый пост как никак
-
Здравствуйте товарищи. Помогите выявить одну проблему, а то уже не знаю как с этим бороться, странно что даже гугл не помогает. В общем есть несколько клиентов на андроиде, так вот они изредка перестают цепляться к datasnap серверу. Причём не все сразу, к примеру один отвалился а другие норм работают. Решается только методом полного сброса смартфона и закачки клиента обратно. Как я понял это происходит если ставят какой либо другой софт на смартфон, кодировка или ещё что изменяется. Как это выявить я так и не допёр, есть какое мнение? Заранее благодарю.