Форум: "Сети";
Текущий архив: 2007.04.15;
Скачать: [xml.tar.bz2];
ВнизPOST + Delphi Найти похожие ветки
← →
ph0sgen © (2006-10-25 03:44) [0]Доброго времени суток, уважаемые мастера.
Пытаюсь отправить данные скрипту методои POST. ничего не получается.
Код:
procedure SendPOSTData(const szHost, szPath, szData: PChar);
var
WSAData : TWSAData;
hSock : Integer;
addr : sockaddr_in;
phe : PHostEnt;
szBuff : array [0..255] of Char;
begin
WSAStartup($0101, WSAData);
hSock := socket(2, 1, 6);
case hSock of -1 : Exit; end;
addr.sin_family := 2;
addr.sin_port := htons(80);
addr.sin_addr.s_addr := inet_addr(szHost);
case addr.sin_addr.s_addr of
-1 : begin
phe := gethostbyname(szHost);
case (phe = nil) of
true : begin
closesocket(hSock);
Exit;
end;
end;
addr.sin_addr := PInAddr(phe.h_addr_list^)^;
end;
end;
case connect(hSock, addr, sizeof(addr)) of
-1 : begin
closesocket(hSock);
WSACleanup;
Exit;
end;
end;
lstrcpy(szBuff, "POST ");
lstrcat(szBuff, szPath);
lstrcat(szBuff, " HTTP/1.0"#13#10#13#10);
lstrcat(szBuff, szData);
lstrcat(szBuff, #13#10#13#10);
send(hSock, szBuff, lstrlen(szBuff), 0);
closesocket(hSock);
WSACleanup;
end;
что я делаю не правильно?
спасибо за внимание.
← →
ph0sgen © (2006-10-25 03:48) [1]использую процедуру так:
SendPOSTData("some_host.com", "/script.php?param", "data1=...&data2=...&data3=...");
← →
Slym © (2006-10-25 04:08) [2]ничего не получается? Савсем ничего... Неповезло в жизни...
Или что конкретно не получается или код ошибки или что сервер возвращает...
На вскидку не передаешь серверу ContentLength, а они иногда на это обижаются...
Иногда требуется Host, у тебя его тоже нету
← →
ph0sgen © (2006-10-25 05:15) [3]спасибо. попробую.
← →
ph0sgen © (2006-10-25 05:15) [4]а ContentLength это общая длина?
← →
Чапаев © (2006-10-25 10:14) [5]Во-первых, это длина только "тела", во-вторых, #13#10 после тела передавать незачем.
← →
Ketmar © (2006-10-25 10:54) [6]в-третьих, никто не забыл про то, что данные обычно -- url-encoded? и соответствующий content-type?
← →
Чапаев © (2006-10-25 15:14) [7]> [6] Ketmar © (25.10.06 10:54)
Content-Type не помешает, конечно, но и критически важным его в данном случае считать не приходится.
← →
Ketmar © (2006-10-25 15:42) [8]>[7] Чапаев(c) 25-Oct-2006, 15:14
>критически важным его в данном случае считать не приходится.
не спорю. но лучше сразу научить, чем потом переучивать.
зыж я в CDM о нём забыл. ничего, схавало. %-)
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2007.04.15;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.039 c