Осознал, что для моей цели нужно использовать WebModule. Параметры теперь получаю, но проблема с их отправкой.
Код:
1 2 3 4 5 6 7 8 9 10 11 12 | data := TIdMultiPartFormDataStream . Create;
for i := 0 to Request . ContentFields . Count- 1 do
begin
p:=pos( '=' ,Request . ContentFields[i]);
sl:=Copy(Request . ContentFields[i], 1 ,p- 1 );
sr:=Copy(Request . ContentFields[i],p+ 1 ,length(Request . ContentFields[i])-p);
data . AddFormField(sl,sr);
end ;
IdHTTp1:=TIdHTTP . Create( nil );
IdHTTp1 . Request . UserAgent:= 'Opera/9.80 (Windows NT 6.1) Presto/2.12.388 Version/12.12' ;
IdHTTp1 . Request . Host:=sname;
Response . Content:=Response . Content+IdHTTp1 . Post( 'http://' +sname+ '/MarcWeb/Exe/OPACServletBody.exe' ,data); |
В общем, приходит ответ от исходного EXE файла, "Ошибка параметров HTML-формы!" (генерируется им).
Как сделать так, чтобы переслать без каких-то искажений все входящие POST параметры? Или в чем сейчас может быть разница между тем, как параметры пришли в мой CGI и как были переданы. Исходя из того, что при получении параметров через моего посредника, исходное CGI сообщает об ошибке, какая-то разница существует.