This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: http.server failed to decode '+' to ' ' when calling cgi script/executable in window
Type: behavior Stage:
Components: Versions: Python 3.4
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: memkmemk, r.david.murray
Priority: normal Keywords:

Created on 2015-01-14 08:59 by memkmemk, last changed 2022-04-11 14:58 by admin.

Files
File name Uploaded Description Edit
codes.zip memkmemk, 2015-01-15 02:38
Messages (3)
msg234016 - (view) Author: memkmemk (memkmemk) Date: 2015-01-14 08:59
The actual commandline generated from http request does not decode '+' back to ' '
msg234026 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2015-01-14 13:35
There is insufficient information here to reproduce your issue.  Can you provide an example?
msg234045 - (view) Author: memkmemk (memkmemk) Date: 2015-01-15 02:38
OK. Here is the exact things I did. All the txt is in the attached codes.zip
I was playing around with python -m http.server --cgi and decided to make a java cgi.
So 
1. I created one and compile it. (hellojava.java)
2. Test run it in console. (c1.txt)
3. as java class file cannot be directly executed, so I create a little batch file to run it. (runjava.bat)
4. and tested it in console (c3.txt)
5. start up the http.server --cgi (c2.txt)
6. then I fire up my firefox 35.0 and go to URL http://127.0.0.1:8000/cgi-bin/runjava.bat?hellojava
7. and got the expected result (r1.txt)
8. and the console of the http.server show expected result (cr1.txt)
9. then I try to pass parameter into the java cgi itself, so I go to URL http://127.0.0.1:8000/cgi-bin/runjava.bat?hellojava+test
10. results in an blank page, actual response is also blank.
11. console shows error message (cr2.txt)
12. so I run the generated command in actual console and get the same error (cr3.txt, I am using Chinese locale so I put the actual error and English on line 3)
13. and if I replace the '+' with ' ' in the command it will work as expected. (cr4.txt)
History
Date User Action Args
2022-04-11 14:58:11adminsetgithub: 67427
2015-01-15 02:38:22memkmemksetfiles: + codes.zip

messages: + msg234045
2015-01-14 13:35:54r.david.murraysetnosy: + r.david.murray
messages: + msg234026
2015-01-14 09:00:36memkmemksettype: behavior
2015-01-14 08:59:16memkmemkcreate