J'essaie de serveur reposant que l'on peut télécharger l'image, Par l'utilisation de django-piston je peux mettre, obtenir, afficher des informations avec repos, mais je ne sais pas comment télécharger l'image.Can module django-piston créer télécharger image webservice reposant
Répondre
à peu près. Techniquement, c'est juste un post http.
D'une part, oui. Si vous avez les données d'image, il est possible de l'envoyer par la poste à un gestionnaire qui sait comment le gérer; Si vous le faites correctement, il devrait, théoriquement, être disponible dans request.FILES à votre gestionnaire. HTTP simple.
D'autre part, non. Afin de faire un téléchargement AJAX comme celui-ci, vous auriez en quelque sorte obtenir les données d'image sans que l'utilisateur ne soumette réellement un formulaire. C'est pourquoi les "ajax upload forms" sont si difficiles à mettre en œuvre, et utilisent généralement des astuces comme les iframes cachés pour faire leur travail. Pour autant que je sache, seul Firefox et ses gecko kin permettent ce type d'accès au contenu binaire d'un champ de fichier, via la méthode getAsBinary() File object's.
Vous pouvez certainement faire le POST. Le fichier (s) sera disponible dans la request.FILES (le piston ne gênera pas).
Afin de faire le PUT, nous devrons apporter quelques modifications au piston pour prendre en charge l'en-tête x-method-override. C'est ce que je fais pour permettre PUT et DEL de flash. (Ne pas oublier d'ajouter l'en-tête quand vous faites le POST pour le faire s'interprété comme un PUT)
est Voici quelques exemples middleware:
class x_http_methodoverride_middleware():
def process_request(self, request):
if 'HTTP_X_HTTP_METHODOVERRIDE' in request.META:
newMethod = request.META['HTTP_X_HTTP_METHODOVERRIDE']
if 'PUT' == newMethod.upper():
request.method = 'PUT'
request.META['REQUEST_METHOD'] = 'PUT'
request.PUT = request.POST
if 'DELETE' == newMethod.upper() or 'DEL' == newMethod.upper():
request.method = 'DELETE'
request.META['REQUEST_METHOD'] = 'DELETE'
request.DELETE = request.POST
(le code est d'un billet de piston ouvert ici http://bitbucket.org/jespern/django-piston/issue/83/use-x-http-method-override-to-override-put)
Vous pouvez trouver deux réponses ici: http://groups.google.com/group/django-piston/browse_thread/thread/6f3f964b8b3ccf72/bd1658121bb1874c?show_docid=bd1658121bb1874c&pli=1
Une façon est d'utiliser request.FILES pour obtenir le nom de fichier, puis d'enregistrer l'image:
def create(self, request, nickname):
name = request.FILES["image"].name
image = PIL.Image.open(request.FILES["image"])
image.save(SOME_PATH+name)
return rc.ALL_OK
La deuxième suggestion est de définir un modèle d'image et une forme Imageform, et les utiliser:
def create(self, request, nickname):
form = ImageForm(request.POST, request.FILES)
if form.is_valid():
Image.objects.create(image=form.cleaned_data['image'])
return rc.ALL_OK
return rc.BAD_REQUEST
ATTENTION: Je n'ai pas testé l'une de ces méthodes!
- 1. Consommez webservice reposant par proxy web
- 2. consommer/unité formulaire de test validé webservice reposant
- 3. Comment mettre en œuvre webservice reposant avec python/django
- 4. télécharger une image et vidéo
- 5. Can json Datasource Tenir/contenir une image?
- 6. Service WCF reposant et LINQ
- 7. Image Télécharger avec aperçu
- 8. Télécharger un fichier image en utilisant python
- 9. Image wrapper/module pour DNN
- 10. Application iPhone Facebook Image Télécharger
- 11. Imposer une image à télécharger
- 12. DRUPAL, module vidéo: télécharger manuellement les vignettes
- 13. créer le module vtiger
- 14. Service Web reposant en Java
- 15. authentification reposant current_user
- 16. personnalisation d'itinéraire reposant
- 17. IPhone service WCF reposant
- 18. Comment télécharger une image dans l'application iPhone
- 19. Eclipse plugin pour Apache Axis2 pour créer webservice
- 20. Télécharger l'image, créer son pouce puis enregistrer
- 21. Boucle Python pour module image et pil
- 22. Télécharger le fichier en utilisant ajax et webservice
- 23. Télécharger une image via urllib et python
- 24. analyse api reposant côté serveur
- 25. maillot reposant + serveur grizzly + hibernation
- 26. Module de vote Drupal avec une image par option
- 27. fondu dans le module Image Python
- 28. Python Turtle Module- Enregistrement d'une image
- 29. télécharger une image et obtenir ses octets
- 30. Télécharger une image avec le script Photoshop
en dire plus ... – miku
désolé pour le manque de détails. J'ai besoin de créer un service web reposant qui permet de télécharger l'image et de renvoyer l'identifiant et l'URL de l'image en utilisant django-piston, Est-il possible de faire ça? – vernomcrp