![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
запрос [D7, XP]
bumb © (2011-02-28 13:28:00)Всем Добрый день. Есть программа которая получает от сервера список справочников
procedure TForm1.Button1Click(Sender: TObject);
var
stringstream: TStringStream;
begin
stringstream:=TStringStream.Create('');
try
stringstream.WriteString('input_xml=<?xml version="1.0" encoding="windows-1251"?>');
stringstream.WriteString('<document>');
stringstream.WriteString('<function name="catalogGetList">');
stringstream.WriteString('<param name="login">ivanov</param>');
stringstream.WriteString('<param name="pass">dfgfd4gfdsadqwerghjki79a4fa6dfc</param>');
stringstream.WriteString('<param name="idEmployer">807</param>');
stringstream.WriteString('</function>');
stringstream.WriteString('<client name="SomeProgram" version="1.0"/>');
stringstream.WriteString('</document>');
IdHTTP1.Request.ContentType:='application/x-www-form-urlencoded';
IdHTTP1.Request.ContentLength:=stringstream.Size;
stringstream.Position:=0;
Memo1.Text:=IdHTTP1.Post(' http://xxx.xxx.xxx.xxx/api/functions.php', stringstream);
finally
stringstream.Free;
end;
У меня вопрос в том, как создать справочники у себя на компе, такие же как полученные от сервера? У меня также есть прога чтобы создать с нуля справочник у себя на компе, но задача такая что нужна создать точно такую же, как на сервере. Как это сделать?
sniknik (2011-02-28 14:29:00) [21]> проблема в том что сервер Один
это не проблема... оно так работает, что один сервер обрабатывает кучу запросов с клиентов. а локальные справочники это проблемы на синхронизацию и т.д.
> а компьютеров несколько.
смешно. в инете сервера с миллионами клиентов работают, и ничего. не проблема.
sniknik (2011-02-28 14:26:00) [22]> Также есть прога на создания у себя на компе справочников.
если имеется в виду код ниже, то это post запрос на сервер, а не создание "справочника с нуля" у себя на компе.
и да в ответе может быть какая то структура, по которой может и можно что то создать, но ... на кой оно здесь? к вопросу код отношения не имеет.
скорее имеет та часть протокола, здесь не показанного, где получаются данные в придачу к структуре.
bumb (2011-02-28 14:24:00) [23]проблема в том что сервер Один, а компьютеров несколько. И Справочников около 20ти. Поэтому нужна прога которая сразу же из полученного списка создаст справочник на любом компе
sniknik (2011-02-28 14:19:00) [24]> Доступа на чтение у меня есть.
ну так считай данные, да залей их в справочники созданные у себя на компе. в чем проблема?
bumb (2011-02-28 14:06:00) [25]Доступа на чтение у меня есть. Также есть прога на создания у себя на компе справочников.
procedure TForm1.Button3Click(Sender: TObject);
var
stringstream: TStringStream;
begin
stringstream:=TStringStream.Create('');
try
stringstream.WriteString('input_xml=<?xml version="1.0" encoding="windows-1251"?>');
stringstream.WriteString('<document>');
stringstream.WriteString('<function name="catalogCreate">');
stringstream.WriteString('<param name="login">qwerty</param>');
stringstream.WriteString('<param name="pass">hghghgdhg5a743jhjha0e4a801fc3</param>');
stringstream.WriteString('<param name="idEmployer">456</param>');
stringstream.WriteString('<param name="name"><![CDATA[novaya]]></param>');
stringstream.WriteString('<param name="iddepartment">323</param>');
stringstream.WriteString('<param name="idsystem">0</param>');
stringstream.WriteString('<param name="recordtype">0</param>');
stringstream.WriteString('<param name="quotient">0</param>');
stringstream.WriteString('<param name="visible">0</param>');
stringstream.WriteString('</function>');
stringstream.WriteString('<client name="SomeProgram" version="1.0"/>');
stringstream.WriteString('</document>');
IdHTTP1.Request.ContentType:='application/x-www-form-urlencoded';
IdHTTP1.Request.ContentLength:=stringstream.Size;
stringstream.Position:=0;
Memo1.Text:=IdHTTP1.Post(' http://xxx.xxx.xxx.yyy/api/functions.php', stringstream);
finally
stringstream.Free;
end;
end;
Но она создает справочник с нуля, а мне нужна такая же, как полученная от сервера
sniknik (2011-02-28 14:01:00) [26]> нужна создать точно такую же, как на сервере. Как это сделать?
легко!
договариваешься с админами а сервере и например получаешь ежедневный бэкап базы.
или они открывают тебе доступ серверной базы на чтение, без http.
или они/программисты той конторы пишут для тебя скрипты которые возвращают структуру/данные базы по http.
или расширивают раздел по ftp куда будут складировать нужное тебе, и ты будешь забирать.
или открывают тебе доступ по RDP (удаленный рабочий стол), и ты там сам собираешь нужное, и передаешь в расшарку своей машины.
вариантов масса в общем, но главное, вначале нужно договориться...
bumb (2011-02-28 13:57:00) [27]Програмка проверена, работает. Вопрос в том как создать справочники у себя на компе, такие же как полученные от сервера?
Dennis I. Komarov (2011-02-28 13:41:00) [28]Ничего у тебя нет, есть только некий Post к серверу, и вероятно некий контент, который он вернет, если изволит.