Hi,
ich glaube du wirfst
HTTP-Header und
POST-Daten durcheinander.
Eine HTTP-Anfrage besteht immer (egal ob POST, GET, oder anderes) auch aus Headern. Einer davon ist der Authorization-Header in dem von dir beschriebenen Format.
Der Unterschied zwischen POST und GET besteht darin, dass POST nach diesen Headern noch weitere Daten überträgt. Die Länge dieser Daten in Zeichen wird übrigens auch als Header ("Content-Length") übermittelt.
Hier ein Beispiel wie es sein sollte (so sieht die HTTP-Anfrage dann tatsächlich aus, falls du das noch nicht kennst):
Code:
POST /my/path HTTP/1.0
Content-Type: application/x-www-form-urlencoded
Authorization: Basic base64string
Content-Length: 8
ex=ample
Mit Delphi habe ich nichts mehr zutun, aber du hast glaube ich folgendes gemacht:
Code:
POST /my/path HTTP/1.0
Content-Type: application/x-www-form-urlencoded
Content-Length: keinelustzuzählen
Authorization=Basic base64string
Du musst diese Daten also in den Header verfrachten. (Google meint, du suchst IdHttp.Request.CustomHeaders.AddValue) Außerdem wirst du für eine POST-Anfrage auch weitere Daten zum übertragen brauchen, aber ich vermute, diese hast du in deinem Codebeispiel weggelassen.