(self)
| 565 | self.execute_javascript(code) |
| 566 | |
| 567 | def do_POST(self): |
| 568 | self._instance() |
| 569 | file_data = None |
| 570 | # listener_widget = None |
| 571 | # listener_function = None |
| 572 | try: |
| 573 | # Parse the form data posted |
| 574 | filename = self.headers['filename'] |
| 575 | listener_widget = runtimeInstances[self.headers['listener']] |
| 576 | listener_function = self.headers['listener_function'] |
| 577 | form = cgi.FieldStorage(fp=self.rfile, |
| 578 | headers=self.headers, |
| 579 | environ={'REQUEST_METHOD': 'POST', |
| 580 | 'CONTENT_TYPE': self.headers['Content-Type']}) |
| 581 | # Echo back information about what was posted in the form |
| 582 | for field in form.keys(): |
| 583 | field_item = form[field] |
| 584 | if field_item.filename: |
| 585 | # The field contains an uploaded file |
| 586 | file_data = field_item.file.read() |
| 587 | file_len = len(file_data) |
| 588 | self._log.debug('post: uploaded %s as "%s" (%d bytes)\n' % (field, field_item.filename, file_len)) |
| 589 | get_method_by_name(listener_widget, listener_function)(file_data, filename) |
| 590 | else: |
| 591 | # Regular form value |
| 592 | self._log.debug('post: %s=%s\n' % (field, form[field].value)) |
| 593 | |
| 594 | if file_data is not None: |
| 595 | # the filedata is sent to the listener |
| 596 | self._log.debug('GUI - server.py do_POST: fileupload name= %s' % (filename)) |
| 597 | self.send_response(200) |
| 598 | except Exception: |
| 599 | self._log.error('post: failed', exc_info=True) |
| 600 | self.send_response(400) |
| 601 | self.send_header('Content-type', 'text/plain') |
| 602 | self.end_headers() |
| 603 | |
| 604 | def do_HEAD(self): |
| 605 | self.send_response(200) |
nothing calls this directly
no test coverage detected