Post Probleme mit Indy TIdHTTP

Ich bin haben Sie Probleme mit der Buchung auf Amazon SES Service mit Indy TIdHTTP.

Hier ist ein Beispiel für den code, den ich verwende:

procedure TMainFrm.btnAmazonSESClick(Sender: TObject);
var
  SSLHandler: TIdSSLIOHandlerSocket;
  HttpClient: TIdHTTP;  
  Params: TStringStream;
begin
  SSLHandler := TIdSSLIOHandlerSocket.Create(Self);
  HttpClient := TIdHTTP.Create(Self);  
  Params := TStringStream.create('');
  try
    with SSLHandler do
      SSLOptions.Method := sslvSSLv3
    with HttpClient do
    begin
      IOHandler := SSLHandler;
      AllowCookies := True;
      HandleRedirects := True;
      HTTPOptions := [hoForceEncodeParams];
      Request.ContentType := 'application/x-www-form-urlencoded';
    end;

    PageMemo.Text := HttpClient.Post('https://email.us-east-1.amazonaws.com?Action=VerifyEmailAddress&AWSAccessKeyId=012Some123Key46&EmailAddress=test@test%2Ecom', Params);

  finally
    SSLHandler.Free;
    HttpClient.Free; 
    Params.Free;
  end;
end;

Ergebnis

  • Unter Indy 10.5.7 bekomme ich die Fehlermeldung: HTTP/1.1 404 not Found

  • Unter Indy 9.0.14 bekomme ich die Fehlermeldung: Socket Error # 11004

Debugging-Versuche

  • Diese gleiche demo können erfolgreich HOLEN Sie den HTML-von einer HTTPS-Seite.

  • Wenn ich fügen Sie die obige URL in einem browser, es zeigt das erwartete XML-Ergebnis.

Ich würde schätzen jede Beratung, die auf die Ursache.

  • Ich glaube, Sie müssen den SSL-dll ' s im selben Ordner wie die Anwendung oder in den windows-system32-Ordner... lassen Sie mich wissen, wenn Sie möchten mir hochladen, die ich schon irgendwo, meine version ist libeay32.dll 1.0.0.4 und ssleay32.dll 1.0.0.4
  • Sie nicht POST alle Params, sind Sie sicher, dass Sie möchten, um die Kommunikation mit dem webservice auf diese Weise?
  • alles nach ? ist param name=Wert, in diesem Fall Action=VerifyEmailAddress&AWSAccessKeyId=012Some123Key46&EmailAddress=test@test%2Ecom
  • Duminica, nicht wirklich. query-string <> form-data
  • Danke, ich habe auch die neueste SSL-DLL ' s in den Ordner
InformationsquelleAutor Zax | 2011-10-14
Schreibe einen Kommentar