2010-09-11 26 views
8

Bonne journée. Je suis nouveau à jQuery, et j'ai une familiarité de passage avec javascript, ayant passé la plupart de mon temps sur le côté serveur.Analyse des réponses multipart/mixtes dans jQuery

Mon intérêt est de publier dans le navigateur un objet de formulaire multipart/form-data composé d'un champ de texte et d'un fichier. En réponse, le serveur renvoie une réponse multipart/mixte composée d'une partie html ou json et d'une partie application/octet-stream.

Mon but est d'apprendre à extraire avec jQuery la partie html ou json et éventuellement l'afficher dans une div cible (si html) ou rediriger vers une URL dans le json (si json), et enregistrer le flux d'octets sur le disque. De préférence dans cet ordre. Est-ce que quelqu'un aurait la gentillesse de commenter si une telle analyse multipart/mixed response est possible avec jQuery et une idée de la façon de le faire.

En fait, bien que je préfère jQuery, j'apprendrai quelque chose à partir de réponses encadrées dans n'importe quel framework javascript populaire, et même sans javascript.

Merci.

+0

Voir les réponses à la même, mais question cadre-neutre dans http://stackoverflow.com/questions/12066640/parsing-a-formdata-object-with-javascript –

Répondre

2

GRANDE question. A en juger par l'existence de ce plug-in im en supposant pas:

http://plugins.jquery.com/project/mpAjax

J'ai aussi trouvé ce lien dans une discussion de ce plug-in, ce qui pourrait vous être utile:

http://about.digg.com/blog/duistream-and-mxhr

+2

Merci. Oui, j'ai lu à propos de ce plugin récemment. Ce que je ne pouvais pas discerner était de savoir si ce plugin pouvait être utilisé si j'incluais une entrée pour 'application/octet-stream' ou non. J'ai fait beaucoup de recherches sur ce sujet, et il semble que peu de gens parlent d'analyser les réponses multipartites. Je peux comprendre pourquoi, mais je m'attendais à plus de discussions (et de cas d'utilisation) que ce que j'ai réellement trouvé. – ae6rt

+0

Ouais ... j'ai fait du développement php/js/html/css pour YEARS et je n'ai jamais pensé à une réponse en plusieurs parties jusqu'à ce que j'y ai vu quelques questions sur SO au cours de la dernière semaine ou deux. Des choses intéressantes cependant. – prodigitalson

+0

@ ae6rt, en supposant que vous réussissiez à analyser la réponse 'multipart/mixed', qu'allez-vous faire avec la partie' application/octet-stream'? –

0

Regardez le jQuery's API. Si votre appel AJAX renvoie HTML, vous pouvez utiliser la fonction .load. Si elle renvoie JSON, vous pouvez utiliser la fonction .getJSON.

+0

pas vraiment ce qu'il demande – prodigitalson

+0

Merci. En fait, le serveur retournera toujours multipart/mixed. Par souci de discussion, nous pouvons supposer que les parties seront toujours 'text/html' et 'application/octet-stream'. – ae6rt