Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Google docs (https://www.clubdelphi.com/foros/showthread.php?t=68274)

erickahr 04-06-2010 18:16:40

Google docs
 
Saludos compañeros, espero me puedan ayudar, y de antemano muchas gracias.

El asunto, es que he desarrollado el ejemplo de Marco Cantú para modificar hojas de GoogleDocs, desde una aplicacion de delphi 2010, me funciona bien, pero solo sirve para agregar registros a un documento existente, con las columnas definidas, lo que yo quiero es crear desde mi aplicacion una SpreadSheet nueva, y rellenarla desde mi aplicacion.

He chacado la documentacion del API de Google, pero como no se mucho de XML:(. Bueno espero me puedan ayudar y nuvamente Gracias por su atencion.

adeszeus 05-06-2010 04:23:33

saludos
 
jajaja que onda ya por acá pidiendo auxilio saludos desde acá cuídate y no hd checado el api veamos sí este fin lo resolvemos cuídate y estamos en contacto

erickahr 08-06-2010 01:19:22

Hola
 
Sigo con el problema, he encontrado en al API la siguiente info:
Cita:

Creating an empty document

Here is an example of creating a document by uploading metadata to the server with an HTTP POST request. This will create an empty document called new document on Google Documents.
POST /feeds/default/private/full HTTP/1.1Host: docs.google.comGData-Version: 3.0Content-Length: 287Content-Type: application/atom+xml<?xml version='1.0' encoding='UTF-8'?><entry xmlns="http://www.w3.org/2005/Atom"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/docs/2007#document"/> <title>new document</title></entry>
he puesto este codigo en mi aplicacion pero me da un error de autenticacion, aunque el asunto del acceso esta resuelto ya que si puedo añadir informacion a una hoja previamente creada.

Código Delphi [-]
procedure TfrMain.btnCrearClick(Sender: TObject);
var
  res, StrData, FromAttr: String;
  postStream: TStream;
  resStream: TStringStream;
begin
  fromAttr:='http://docs.google.com';

 StrData:='+QuotedStr('1.0')+' encoding=' +QuotedStr('UTF-8')+ '?> '+
           ' '  +
             '+
                'term="http://schemas.google.com/docs/2007#document"/> ' +
             'new document '  +
           '  ';

  try
    Altas.Request.CustomHeaders.Values ['Authorization'] := 'GoogleLogin auth=' + googleAuth.AuthString;
    Altas.Request.CustomHeaders.Values ['Content-type'] := 'application/atom+xml';
    Altas.Request.CustomHeaders.Values ['GData-Version'] := '2.0';

    Altas.IOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(Altas);
    postStream := TStringStream.Create (strData);
    showmessage(StrData);

    postStream.Position := 0;
    res := Altas.Post (fromAttr, postStream);
    showmessage(res);
  Except
    on e: Exception do
      Showmessage(e.ClassName+': '+e.Message);
  end;
end;

Vuelvo a poner esta parte porque en la parte de arriba no me lo respeta, no se porque, en edicion se ve completo pero ya guardado aparece incompleto.

StrData:='<?xml version='+QuotedStr('1.0')+' encoding=' +QuotedStr('UTF-8')+ '?> '+
'<entry xmlns="http://www.w3.org/2005/Atom"> ' +
'<category scheme="http://schemas.google.com/g/2005#kind" '+
'term="http://schemas.google.com/docs/2007#document"/> ' +
'<title>new document</title> ' +
'</entry> ';

Sigo esperando que alguien me pueda ayudar, Saludos y gracias de antemano.

erickahr 08-06-2010 18:07:52

Hola otra vez...
 
Perdon por la insistencia, pero voy a replantear mi pregunta ya que tal vez no me he explicado bien y debido a esto no he obtenido respuesta, reitero nuevamente Gracias por tomarse el tiempo de leer mi pregunta.

Ojala me pudieran ayudar, como puedo poner esta 'solicitud' en un IdHttp, de Delphi 2010, una vez mas gracias.

Código:

POST /feeds/default/private/full HTTP/1.1
Host: docs.google.com
GData-Version: 3.0
Content-Length: 287
Content-Type: application/atom+xml

<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns="http://www.w3.org/2005/Atom">
  <category scheme="http://schemas.google.com/g/2005#kind"
      term="http://schemas.google.com/docs/2007#document"/>
  <title>new document</title>
</entry>



La franja horaria es GMT +2. Ahora son las 22:26:10.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi