2010-06-03 47 views
1

如何使用python cgi将.png文件发送到flex应用程序?使用python cgi发送.png文件

在此先感谢...

+0

- 服务器或客户端?如果你已经想出了CGI部分,那么在Flex或HTML中就是一样 - 只需使用CGI URL – Amarghosh 2010-06-03 12:07:49

+0

两部分...... – Nimmy 2010-06-03 12:18:12

+0

既然你说'发送图像':你想要在图像控件中显示它或者将其加载到字节数组中进行处理?无论哪种情况,您都可以将CGI url用作'src'属性。至于CGI部分,您应该解析url并获取图像路径,然后读取该文件,并将其内容类型头设置为'image/png'写入响应:我不熟悉如何操作在CGI中,所以请等待某人带上一些代码。 – Amarghosh 2010-06-03 12:26:02

回答

3

你的问题的Python的/ CGI侧可以像这样的事情一样简单,如果你只需要发送一个现有的图像:

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()) 

如果,在另一方面,你动态地,说,PIL创建图像,你可以做一些沿着这些路线:

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') 
你要哪部分使用Flex或Python CGI帮助