2017-10-14 13 views
0

J'écris une API REST dans JAX-RS 2.0, JDK 8 pour la ci-dessous exigenceAPI REST Demande unique - Réponses multiples

POST API/serveur/fileUpload/ (Multipart de données de formulaire) où je dois envoyez un fichier .AI (Adobe Illustrator) Big dans ce.

Le serveur, prend le fichier et renvoie l'état 202 (accepté), en reconnaissant que le transfert de fichiers s'est correctement déroulé. (Du point de terminaison au serveur)

Maintenant sur le serveur, j'utilise Java + Imagemagik pour convertir le fichier .AI (fichier 20-25 MB) en petite vignette JPG, le placer sur un serveur HTTP Apache et partager l'emplacement (comme http://happyplace/thumbnail0987.jpg)

maintenant, la deuxième réponse devrait venir de serveur avec statut 200 URL OK et Miniature

est-il possible avec une API REST? (Async/similaires)

ou devrais-je diviser 2 appels API, S'il vous plaît suggèrent

+1

Copie possible de [Statut HTTP 202 - comment fournir des informations sur la fin d'une requête asynchrone?] (Https://stackoverflow.com/questions/14832983/http-status-202-how-to-provide-information-about- async-request-completion) –

Répondre

0

Si vous appelez à partir du script l'appel sera async vous pouvez gérer l'URL de la vignette lorsque vous obtenez une réponse. Quand vous appelez du programme java je suggère de l'exécuter sur un thread différent, Si l'exécution n'est pas séquentielle i.e (Les lignes restantes peuvent être exécutées sans obtenir l'URL). Si l'url est nécessaire pour la section de code restante, vous pouvez passer un appel et attendre la réponse, puis exécuter le code restant.

1

Non. Dans http, une requête obtient une réponse. Le client doit envoyer une deuxième demande pour obtenir une deuxième réponse.