Fórum Como enviar para registro para um Webservice? #472096
06/03/2014
0
Como é que eu devo proceder para enviar vários registros para um Webservice? Exemplo: Quero dar um "post" para um webservice contendo um cadastro de produtos com mais de 2500 registros. Tentei fazer isso utilizando um loop, "postando" registro por registro da tabela, mas além de fica SUPER lento, o processo não chega até o final.
Grato e aguardo qualquer orientação.
M. C.
Curtir tópico
+ 0Posts
10/03/2014
M. C.
Gostei + 0
18/05/2014
M. C.
Gostei + 0
20/05/2014
Lourival Queiroz
Gostei + 0
20/05/2014
M. C.
Pois é, eu adoro JSON e sempre trabalho com ele. O problema é que quero fazer um "POST" com vários registros e não sei com fazer. GETs e POSTs com pouco registros sei fazer utilizando uma única requisição.
Me dê um exemplo de como preceder. Link ou coisa do tipo será bem vindo.
Grato e aguardo o seu retorno.
Gostei + 0
13/08/2014
M. C.
Gostei + 0
14/08/2014
Valquiria Silva
Se entendi sua dúvida, vc teria que fazer "array" com as essas informações e enviar.
tipo:
var
Registro: TStrings;
host: string;
begin
IdHTTP1.Request.Clear;
IDHttp1.Request.CustomHeaders.Clear;
IdHTTP1.Request.ContentType := 'application/json';
IdHTTP1.Request.Accept := 'application/json';
Registro := TStringList.Create;
try
Registro.Add('{"produtos": {"id": "1", "descricao": "Teste 1" ,"ativo" : "false" }}');
Registro.Add('{"produtos": {"id": "2", "descricao": "Teste 2" ,"ativo" : "true" }}');
Registro.Add('{"produtos": {"id": "3", "descricao": "Teste 3" ,"ativo" : "false" }}');
IdHTTP1.Post(host, Registro);
finally
FreeAndNil(Registro);
end;
Você pode encontrar mais informações sobre json aqui
espero que ajude.
Gostei + 0
15/08/2014
M. C.
Se entendi sua dúvida, vc teria que fazer "array" com as essas informações e enviar.
tipo:
var
Registro: TStrings;
host: string;
begin
IdHTTP1.Request.Clear;
IDHttp1.Request.CustomHeaders.Clear;
IdHTTP1.Request.ContentType := 'application/json';
IdHTTP1.Request.Accept := 'application/json';
Registro := TStringList.Create;
try
Registro.Add('{"produtos": {"id": "1", "descricao": "Teste 1" ,"ativo" : "false" }}');
Registro.Add('{"produtos": {"id": "2", "descricao": "Teste 2" ,"ativo" : "true" }}');
Registro.Add('{"produtos": {"id": "3", "descricao": "Teste 3" ,"ativo" : "false" }}');
IdHTTP1.Post(host, Registro);
finally
FreeAndNil(Registro);
end;
Você pode encontrar mais informações sobre json aqui
espero que ajude.
Olá, Bom Dia!
Aparentemente você entendeu sim. Vendo o seu código, já consigo entender como proceder.
Faz tempo que procuro por isso... mas até o momento não consegui encontrar nada que me pudesse esclarecer tal duvida.
Só para constar: Eu trabalho com JSON faz muito tempo e adoro por o mesmo em uso por diversos motivos (não preciso citar), sendo assim, sobre o uso/aplicação do mesmo não tenho dúvidas. Como sempre utilizei somente para receber grandes volumes de retorno de um RESTFul, até aí tudo bem, mas como para enviar sempre foram poucos registros, geralmente "um-a-um" eu me saia bem, até que veio a necessidade e enviar grandes volumes também, daí nunca obtive sucesso.
Vou fazer uns testes me baseando no seu exemplo e te dou retorno. Caso seja necessário, gostaria de puder contar novamente com a sua ajuda;
Muitíssimo obrigado pela sua atenção.
Forte abraço!
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)