api.com/users?id=id1,id2,id3,id4,id5
api.com/users?ids[]=id1&ids[]=id2&ids[]=id3&ids[]=id4&ids[]=id5
IMO, as chamadas acima não parecem RESTful, no entanto, essas são soluções alternativas rápidas e eficientes (y). Mas o comprimento da URL é limitado pelo servidor da web, por exemplo, tomcat .
Tentativa RESTful:
POST http://example.com/api/batchtask
[
{
method : "GET",
headers : [..],
url : "/users/id1"
},
{
method : "GET",
headers : [..],
url : "/users/id2"
}
]
O servidor responderá ao URI do recurso batchtask recém-criado .
201 Created
Location: "http://example.com/api/batchtask/1254"
Agora o cliente pode buscar a resposta em lote ou o progresso da tarefa por meio de sondagem
GET http://example.com/api/batchtask/1254
Esta é a forma como outras pessoas tentaram resolver este problema: