I don't know what to make of your error, but I do have file upload using flex working. I'm assuming by flex you mean Adobe Flex.

The following web.py code works for me.

urls = ('/upload', 'Upload')

class Upload:
    def POST(self):
       
        input = web.input(Filedata={})
        file = open("images/" + input["Filedata"].filename, "w")
        file.write(input["Filedata"].file.read())

-Ben

hhsuper wrote:
i have a simple test, web.py impelement the file upload func, and tested with the html page ok, but when i upload the file with
 flex (in the same site, actual in the same html page ), there is some error, follow

beside, the same flex code used for django app is ok(i have a simple test)

Traceback (most recent call last):
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 211, in process
    return self.handle()
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 201, in handle
    return self._delegate(fn, self.fvars, args)
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 385, in _delegate
    return handle_class(cls)
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 360, in handle_class
    return tocall(*args)
  File "D:\Projects\truman2\app\controllers\scene.py", line 159, in POST
    i = web.input(photo = {})
  File "C:\Python25\lib\site-packages\web.py-0.31-py2.5.egg\web\webapi.py", line
 208, in input
    a = cgi.FieldStorage(fp=fp, environ=e, keep_blank_values=1)
  File "C:\Python25\lib\cgi.py", line 534, in __init__
    self.read_multi(environ, keep_blank_values, strict_parsing)
  File "C:\Python25\lib\cgi.py", line 659, in read_multi
    environ, keep_blank_values, strict_parsing)
  File "C:\Python25\lib\cgi.py", line 536, in __init__
    self.read_single()
  File "C:\Python25\lib\cgi.py", line 669, in read_single
    self.read_lines()
  File "C:\Python25\lib\cgi.py", line 691, in read_lines
    self.read_lines_to_outerboundary()
  File "C:\Python25\lib\cgi.py", line 719, in read_lines_to_outerboundary
    line = self.fp.readline(1<<16)
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\wsgiserver\__ini
t__.py", line 206, in readline
    data = "">   File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\wsgiserver\__ini
t__.py", line 1024, in readline
    data = "">   File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\wsgiserver\__ini
t__.py", line 925, in recv
    return self._sock.recv(size)
timeout: timed out

Traceback (most recent call last):
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 209, in process
    return p(lambda: process(processors))
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 552, in processor
    return handler()
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 209, in <lambda>
    return p(lambda: process(processors))
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 216, in process
    raise self.internalerror()
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 449, in internalerror
    return debugerror.debugerror()
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\debugerror.py",
line 299, in debugerror
    return web._InternalError(djangoerror())
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\debugerror.py",
line 289, in djangoerror
    return t(exception_type, exception_value, frames)
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\template.py", li
ne 850, in __call__
    return BaseTemplate.__call__(self, *a, **kw)
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\template.py", li
ne 768, in __call__
    return self._join_output(out)
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\template.py", li
ne 774, in _join_output
    for name, value in out:
  File "C:\Python25\lib\site-packages\web.py-0.31-py2.5.egg\web\debugerror.pyc",
 line 183, in __template__
    $if ctx.output or ctx.headers:
  File "C:\Python25\lib\site-packages\web.py-0.31-py2.5.egg\web\webapi.py", line
 208, in input
    a = cgi.FieldStorage(fp=fp, environ=e, keep_blank_values=1)
  File "C:\Python25\lib\cgi.py", line 534, in __init__
    self.read_multi(environ, keep_blank_values, strict_parsing)
  File "C:\Python25\lib\cgi.py", line 654, in read_multi
    environ, keep_blank_values, strict_parsing)
  File "C:\Python25\lib\cgi.py", line 536, in __init__
    self.read_single()
  File "C:\Python25\lib\cgi.py", line 669, in read_single
    self.read_lines()
  File "C:\Python25\lib\cgi.py", line 691, in read_lines
    self.read_lines_to_outerboundary()
  File "C:\Python25\lib\cgi.py", line 719, in read_lines_to_outerboundary
    line = self.fp.readline(1<<16)
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\wsgiserver\__ini
t__.py", line 206, in readline
    data = "">   File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\wsgiserver\__ini
t__.py", line 1024, in readline
    data = "">   File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\wsgiserver\__ini
t__.py", line 925, in recv
    return self._sock.recv(size)
timeout: timed out

Traceback (most recent call last):
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 209, in process
    return p(lambda: process(processors))
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 537, in processor
    return handler()
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 209, in <lambda>
    return p(lambda: process(processors))
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 216, in process
    raise self.internalerror()
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\application.py",
 line 449, in internalerror
    return debugerror.debugerror()
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\debugerror.py",
line 299, in debugerror
    return web._InternalError(djangoerror())
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\debugerror.py",
line 258, in djangoerror
    _get_lines_from_file(filename, lineno, 7)
  File "c:\python25\lib\site-packages\web.py-0.31-py2.5.egg\web\debugerror.py",
line 243, in _get_lines_from_file
    context_line = source[lineno].strip('\n')
IndexError: list index out of range

--
Su zhaohui   苏召辉



--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "web.py" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [email protected]
For more options, visit this group at http://groups.google.com/group/webpy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to