Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/10/2011, 23h40   #1
Membre du Club
 
Inscription : décembre 2003
Messages : 403
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 403
Points : 43
Points : 43
Par défaut Upload de fichier en ajax

Bonjour,

Je souhaite utiliser une API REST qui nécessite l'upload d'une image (l'API la traite et me retourne un résultat dans un objet json). Pour cela, je cherche à envoyer une requête POST qui uploaderait le fichier mais en vain

(une sorte de simulation de la soumission automatique d'un formulaire enctype="multipart/form-data", mais ce n'est apparemment pas possible d’après mes recherches... )

Voici le bout de code pour mieux comprendre :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
var data = {"api_id": "XXXXXXXXXXXXXX",
		"api_key": "YYYYYYYYYYYYYYYYYYYYYY"
		"enctype": "multipart/form-data",
		"file": "img/brad-pitt-2.jpg",
		"Content-Transfer-Encoding": "binary"};
 
                $.ajax(
		{
			type: "POST",
			url: "http://api.xxxxx.resturl/process", 
			contentType: "image/jpeg",
			data: data,
			success : function(data)
			{
				//alert(data);
			},
			dataType: "jsonp"
		});
Ceci est sensé me retourner un résultat "success" sous forme d'objet json.

Or j'obtient un objet json, mais avec l'erreur : DOWNLOAD_ERROR_MALFORMED_URL

Pour info, cela fonctionne lorsque j'utilise un simple formulaire d'upload html avec un input type=file. Mais le soucis est que je suis obligé de sélectionner à la main mon fichier... Or dans mon cas, ça doit se faire de façon automatique et dynamique.

J'ai vu qu'il y a une possibilité de faire ce genre d'upload en passant par une iframe, mais j'ai pas l'impression que ce soit très recommandé (de plus, j'ai pas bien compris comment au juste http://www.xorax.info/blog/programma...nput-file.html)

Sinon, y a t-il un autre moyen d'envoyer une requête http mutlipart directement en javascript, par le biais d'ajax ?

Merci de votre aide
benthebest est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/10/2011, 11h16   #2
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonjour

http://www.igloolab.com/jquery-html5-uploader/

http://www.developpez.net/forums/d10...e-ajax-jquery/
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h09.


 
 
 
 
Partenaires

Hébergement Web