-
Как реализовать
function getdata($sn,$pin) { $fp = @fsockopen("scheck.vstup.info", 80, $errno, $errstr, 2); if (!$fp) { $s="CONNE"; return $s; } else { $out = "GET /?exam_sn=$sn&exam_pin=$pin HTTP/1.1\r\n"; $out .= "Host: scheck.vstup.info\r\n"; $out .= "Connection: Close\r\n\r\n"; fwrite($fp, $out); for($i=1;$i<=9;$i++){$s=fgets($fp);} $s=fgets($fp); fclose($fp); return $s; } }
такой код на делфи, я понимаю что через сокет клиент, и даже вроде конектится но вот на запрос ничего не присылает в ответ, или хоть отправте что почитать
-
Теоретически, после фразы "но вот на запрос ничего не присылает", вопрошающий показывает код. А пока что ответ примерно таков - у тебя ошибка в коде.
-
Skt: TClientSocket; .......
procedure TfEditZava.Button3Click(Sender: TObject); begin Skt.Host := 'scheck.vstup.info'; Skt.Port := 80; Skt.Open;
end;
procedure TfEditZava.SktRead(Sender: TObject; Socket: TCustomWinSocket); begin Memo1.Lines.Text := Memo1.Lines.Text + Socket.ReceiveText;
end; procedure TfEditZava.SktWrite(Sender: TObject; Socket: TCustomWinSocket); begin Socket.SendText('GET /?exam_sn=0143165&exam_pin=7084 HTTP/1.1'); end;
вот как-то так у меня
-
'GET /?exam_sn=0143165&exam_pin=7084 HTTP/1.1' + sLineBreak + 'Host: scheck.vstup.info' + sLineBreak + 'Connection: Close' + sLineBreak + sLineBreak
-
Что вообще ничего не возвращает, хоть бы ерор какой, может я чего не правильно делаю
-
все заработало после того как в TClientSocket
поставил ClientType -> ctNonBlocking
огромное спасибо за помощь.
|