![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Hola, necesito utilizar desde mi programa realiazo en delphi5 unos web services. Esto es algo nuevo para mi. He estado leyendo algunos hilos, recopilando información y he realizado el siguiente codigo de prueba utilizando un componente Indy.
Código:
procedure TForm1.Button1Click(Sender: TObject);
var
http: TIdHttp;
respuesta: string;
datosPost: TIdMultiPartFormDataStream;
begin
http:= TIdHTTP.Create(Self);
http.Request.Username:= 'usuario';
http.Request.Password:= 'clave';
datosPost := TIdMultiPartFormDataStream.Create;
try
datosPost.AddFormField('description', 'ejemplo1');
datosPost.AddFormField('comments', 'firmar documento de prueba');
datosPost.AddFormField('reference', '1');
datosPost.AddFormField('file', 'C:\firmar1.pdf');
respuesta := http.Post('www.direcionwebservice', datospost);
finally
http.Free;
datospost.free;
end;
showmessage(respuesta);
end;
Parece ser que no me autentifico correctamente, pero el usuario y la clave son correctos, ya que si pongo la direccion del servicio en un navegador, me sale una ventana pidiendo usuario y clave, introduzco las mismas que pongo en el código y si accedo al web services. Seguro que es un error sencillo, pero es la primera vez que utilizo las indy y que realizo conexiones web services. Alguién prodría orientame un poco. Gracias y saludos.
__________________
El saber no ocupa lugar. |
|
#2
|
|||
|
|||
|
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;
Alguna idea de este error? Saludos.
__________________
El saber no ocupa lugar. |
|
#3
|
|||
|
|||
![]() Viendo que en seccion del foro no tengo muchos comentarios y según observo la mayoría de las consultas sobre Indy se han realizado en la sección de varios he trasladado este hilo a esa seccion.Gracias a todos y si alguien quiere seguir el hilo, este se encuentra en la seccion de varios. Saludos.
__________________
El saber no ocupa lugar. |
|
#4
|
||||
|
||||
|
Si esto es así es precisamente porque la gente no ubica bien los temas. Este foro es más adecuado que Varios por lo que cierro el otro hilo.
// Saludos |
|
#5
|
||||
|
||||
|
Amigo, URBANO, ¡¡¡tienes más de 120 mensajes y haces estas cosas!!!, por favor, recuerda nuestra guía de estilo, gracias.
Edito: Román, he acabado de unir ambos y me he encontrado con tu mensaje, voy a abrirlo de nuevo y a borrar los mensajes repetidos.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#6
|
|||
|
|||
![]() siente el lio. Ya lo habeis arreglado. Gracias.Ya puesto, alguno de ustedes podría ayudarme. Conoceis algo de Indy. Saludos.
__________________
El saber no ocupa lugar. |
|
#7
|
||||
|
||||
|
Como un web service utiliza el protocolo HTTP, ciertamente puedes usar Indy para acceder al servico y mandar y recibir datos, pero es algo rudimentario. Delphi cuenta con herramientas especializadas para el manejo de los servicios web.
// Saludos |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Socket Error # 10054 con TIdHTTP | rolandoj | Internet | 10 | 19-01-2012 15:45:11 |
| Ayuda urgente con Indy TIdHTTP | Pugile | C++ Builder | 1 | 17-03-2011 12:21:04 |
| TIDHTTP Con User y Pass | Neeruu | Varios | 0 | 28-12-2009 13:36:49 |
| Como pasar de TidHTTP con TWebModule a Web Service con XML ? | rolandoj | Internet | 1 | 20-10-2008 17:45:48 |
| TIdHTTP, dlls.... | betto | Internet | 3 | 27-03-2007 21:49:03 |
|