api.com/users?id=id1,id2,id3,id4,id5
api.com/users?ids[]=id1&ids[]=id2&ids[]=id3&ids[]=id4&ids[]=id5
IMO, les appels ci-dessus ne semblent pas RESTful, mais ce sont des solutions rapides et efficaces (y). Mais la longueur de l'URL est limitée par le serveur web, par ex. tomcat .
Tentative de RESTful :
POST http://example.com/api/batchtask
[
{
method : "GET",
headers : [..],
url : "/users/id1"
},
{
method : "GET",
headers : [..],
url : "/users/id2"
}
]
Le serveur répondra à l'URI de la nouvelle création batchtask ressource.
201 Created
Location: "http://example.com/api/batchtask/1254"
Maintenant, le client peut récupérer la réponse du lot ou la progression de la tâche par sondage.
GET http://example.com/api/batchtask/1254
C'est ainsi que d'autres ont tenté pour résoudre ce problème :