J'essaie de télécharger un fichier image via la méthode http Post de l'appareil Android vers Rails Server. Mais la publication d'une image ne fonctionne pas. Plus spécifiquement, le paramètre Post (y compris le fichier image) ne semble pas être envoyé correctement.
J'utilise le client HTTP asynchrone Android (http://loopj.com/androïd-async-http/) pour poster un Image de Android, et le code pour l'affichage de l'image est comme celui-ci. P>
Started POST "/pictures/" for y.y.y.y at 2012-09-03 18:23:00 +0900 Processing by PicturesController#create as HTML Parameters: {"picture"=>{"name"=>"PictureName"}} (0.1ms) begin transaction SQL (0.5ms) INSERT INTO "pictures" ("album_id", "created_at", "image_content_type", "image_file_name", "image_file_size", "image_updated_at", "name", "updated_at", "user_id") VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?) [["album_id", nil], ["created_at", Mon, 03 Sep 2012 09:23:00 UTC +00:00], ["image_content_type", nil], ["image_file_name", nil], ["image_file_size", nil], ["image_updated_at", nil], ["name", "PictureName"], ["updated_at", Mon, 03 Sep 2012 09:23:00 UTC +00:00], ["user_id", nil]] [paperclip] Saving attachments. (11.0ms) commit transaction Redirected to http://x.x.x.x:3000/pictures/10 Completed 302 Found in 15ms (ActiveRecord: 11.6ms)
3 Réponses :
Vous pouvez télécharger les images via la multiparience. p>
Multiparentalité, partie de httpmime 4.0 et ultérieure. Vous permet de mettre plusieurs pièces, séparées par des chaînes de limites et codées à l'aide de Charset donnée, dans la demande HTTPPOST. P>
Pour plus d'informations et comment utiliser MultiPart, voir Ce
S'il vous plaît voir un lien supplémentaire que j'ai ajouté dans ma réponse.
Merci beaucoup pour votre réponse!!! Maintenant, je comprends d'utiliser la multiparentalité, en instance de la multiparentalité et en appliquant une méthode addPart à ce sujet, puis appelez la méthode de seentity à l'instance HTTPPOST. Mais ce que j'utilise n'est pas la classe httppost, mais ASYNCHTTPClient classe. Pourriez-vous me dire comment faire la même chose sur ASYNCHTTPCLIENT?
Ahhh ... Désolé, savez-vous faire la même chose (utiliser la multiparentalité) sur Asynchttpclient?
Il y a une description comme ci-dessous, dans Android AsynchttpClient Page officielle (http://loopj.com/androïd-async-http/)
"Multipart Fichier télécharge sans bibliothèques de tiers supplémentaires " p>
et dans la section des "fichiers de téléchargement avec demandeparams", ils ont un exemple de code pour télécharger une image p> C'est ce que j'ai fait, bien que je n'ai pas fonctionné. Cela aide-t-il à répondre à ma question? P> p>
Salut Ryo, as-tu eu la réponse à votre question?
Désolé, c'était ma faute idiote.
J'aurais dû faire pas p> doit utiliser un nouveau fichier non de fichier em> p> Lorsque vous utilisez un client HTTP asynchrone Android ( http://loopj.com/androïd-async-http/ < / a>), nous n'avons pas à se soucier de la multiparentalité.
Merci à tous les gars qui ont répondu à ma question !!!! p> p>
J'écris un même code dans mon application, mais plusieurs fois Server me donnent une erreur car la taille de l'image est grande, connaissez-vous un moyen d'envoyer une image importante au serveur
Merci. Je cherchais une question similaire.
Je reçois {"Statut": "Erreur", "Erreur": {"Image_Content_Type": ["Est invalide"], "Image": ["Est invalide"]}}. Quelqu'un a-t-il déjà eu ce problème?