idHTTP blad 411 length required

0

Mam dziwny problem co najlepsze ten blad pojawia sie nie u mnie a u kumpla co uzwya miojego programu, u mnie jest wszystko ok

a u niego nie

program wyglada tak

krok pierwszy pobranie listy serwerow z www i to dziala bez zarzutu u niego

ale jak juz ma sie logowac w kroku 2 na jeden z serwerow to wyskakuje ten blad ma ktos jakies sugetie moze musze sekcje length w request extra headers???

0

daj kodu może trochę, możesz ustawić standard na HTTP/1.0 zamiast HTTP/1.1 to nie będzie tego wymagało, ew. musisz w nagłowku nie Length a Content-Length podać długość wysyłanego requestu (poza nagłówkami, liczą się tylko dane typu post [podawane po pustej przerwie na końcu nagłówków])

0

Koleś [!!!] [!!!] :[ To jest forum dotyczące Delphi i programowania w językach object pascal i pascal!!

Nie bazgraj tutaj tych swoich bzdur [!!!]

I przy okazji naucz się pisać po polsku :[

0
irek napisał(a)

...

przecież on ma to w programie zrobionym w języku Delphi - problem z IdHTTP

0
Adamo napisał(a)
irek napisał(a)

...

przecież on ma to w programie zrobionym w języku Delphi - problem z IdHTTP

Spoko a widzisz tutaj jakichś kod?
Ja widzę jedynie jakichś bełkot którego zrozumieć nie można.. To nie tylko nie podchodzi pod delphi ale nawet pod j. poski nie bardzo pasuje

0

To nie odpisuj. Jak chłopak da kod, to pomyślimy. Póki co możemy się co najwyżej we wróżki pobawić.

0

kod wyglada tak to jest drugi krok pierwszy dziala wiec nie wklejam

  Input := TStringStream.Create('');
  Output := TStringStream.Create('');
  try
    btnSend.Enabled := False; // zablokowanie przycisku
  { dodanie do strumienia lancucha oznaczajcego dane nowego tematu na forum. Dane do tego
    lancucha pobierane sa z komponentow }

    Forum.Post(link.Text, Input, Output);
    if Pos('<script language', Output.DataString)=0 then
    begin
      statusBar.SimpleText:='zly link...'+Output.DataString;
    end

blad wywala sie w linijce"Forum.Post(link.Text, Input, Output);" 411 length required

a tak wyglada komponen idhttp u mnie tz jest tak ustawiony

object Forum: TIdHTTP
    OnWork = ForumWork
    OnWorkEnd = ForumWorkEnd
    Host = 'http://ogame185.de'
    OnConnected = ForumConnected
    ProtocolVersion = pv1_0
    Request.Accept = 'text/html'
    Request.AcceptEncoding = 'identity'
    Request.Connection = 'keep-alive'
    Request.ContentLength = 0
    Request.ContentRangeEnd = 0
    Request.ContentRangeStart = 0
    Request.ContentType = 'application/x-www-form-urlencoded'
    Request.ExtraHeaders.Strings = (
      
        'Cookie: U_pl23:REM78=U_pl23%3AREM78; PHPSESSID=d75513ca5bb9299da' +
        'ef06f4c5fbd20af')
    Request.ProxyPort = 0
    Request.UserAgent = '4programmers Poster'
    Left = 600
    Top = 432
  end

a tak nawiasem mówiac wiem, ze to forum od delhi i prosze mi nie zarzucać bełkotu, po prostu zamiast zasypywac forum 200 liniami nieczytelnego kodu wolalem opisac w jakiej sytuacji pojawia sie błąd

0

sorki za literowki ale klawiature mam przedpotpową :)

0

Po pierwsze to po co dajesz w ExtraHeaders jakieś ciastko skoro będzie to działać tylko u ciebie i przez jakiś czas tylko.

przed Post daj:

Forum.Request.ContentLength := Input.Length;

// nie pamiętam czy jest coś takiego jak Length, ale coś w tym stylu

0

dodalem przed post
Forum.Request.ContentLength := length(input.DataString);

ale wyskakuje kumplowi ten sam blad

Adamo napisał(a)

daj kodu może trochę, możesz ustawić standard na HTTP/1.0 zamiast HTTP/1.1 to nie będzie tego wymagało....quote>

a gdzie to sie wpuisuje moze pomoze

0

dziekuje za pomoc ale sam sobie poradzilem

okazuje sie ze trzeba zerowac input przed post jesli w nim ma nic nie byc

Input.WriteString('');
forum.Post(link.Text, Input, Output);

co najlepsze u mnie na 2 kompach to dzialao bez tego ale u kumpla nie
co ciekawe myslalem ze jak tworzy sie obiekt input jest on automatycznie "zerowany" jednak mylilem sie

pozdrawiam

0
lvik napisał(a)

co najlepsze u mnie na 2 kompach to dzialao bez tego ale u kumpla nie

Zapewne ma to związek z przeźroczystym serwerem proxy, który ma większe wymagania dotyczące protokołu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1