He seguido revisando el componente indy y he visto la opción "BasicAuthentication". Dicha opción en el ejemplo anterior, por defecto es False y por lo que la he cambiado, quedando el codigo ahora:
Código:
procedure TForm1.Button1Click(Sender: TObject);
var
http: TIdHttp;
respuesta: string;
datosPost: TIdMultiPartFormDataStream;
begin
http:= TIdHTTP.Create(Self);
http.Request.BasicAuthentication:=True;
http.Request.Username:= 'urbano';
http.Request.Password:= 'atm';
datosPost := TIdMultiPartFormDataStream.Create;
try
datosPost.AddFormField('description', 'Atm1');
datosPost.AddFormField('comments', 'firmar documento de prueba');
datosPost.AddFormField('reference', '1');
datosPost.AddFormField('file', 'C:\firmar1.pdf');
respuesta := http.Post('http://api.portasigma.com/v1/docs/', datospost);
finally
http.Free;
datospost.free;
end;
showmessage(respuesta);
end;
Ahora ya no me da el error de antes, tras ejecutar el codigo, ahora obtengo el error: "HTTP/1.1 401 Bad Request".
Alguna idea de este error?
Saludos.