2010-06-03 9 views
1

Comment envoyer un fichier .png en utilisant python cgi dans une application flexible?Envoyer un fichier .png en utilisant python cgi

Merci à l'avance ...

+0

Quelle partie voulez-vous aider à cgi flex ou python - serveur ou client? Si vous avez trouvé la partie cgi, c'est la même chose en Flex ou html - utilisez simplement l'URL cgi – Amarghosh

+0

Les deux parties ...... – Nimmy

+0

Depuis que vous dites 'envoyer une image': vous voulez l'afficher dans un contrôle d'image ou le charger dans un tableau d'octets pour le traitement? Dans les deux cas, vous pouvez simplement utiliser l'URL CGI comme attribut 'src'. Comme pour la partie CGI, vous devez analyser l'URL et obtenir le chemin de l'image, puis lire le fichier, l'écrire dans la réponse avec un en-tête content-type défini sur 'image/png': Je ne sais pas comment faire dans CGI, alors attendez que quelqu'un vienne avec du code. – Amarghosh

Répondre

3

Le côté Python/CGI de votre question peut être aussi simple que quelque chose comme ça, si vous avez juste besoin d'envoyer une image existante:

import sys 

# Send the Content-Type header to let the client know what you're sending 
sys.stdout.write('Content-Type: image/png\r\n\r\n') 

# Send the actual image data 
with open('path/to/image.png', 'rb') as f: 
    sys.stdout.write(f.read()) 

Si, d'autre part, vous dynamiquement créer des images avec, par exemple, PIL, vous pouvez faire quelque chose le long de ces lignes:

import sys 
import Image, ImageDraw # or whatever 

sys.stdout.write('Content-Type: image/png\r\n\r\n') 

# Dynamically create an image 
image = Image.new('RGB', (100, 100)) 
# ... etc ... 

# Send the image to the client 
image.save(sys.stdout, 'PNG') 
Questions connexes