pythonでget引数にjavascriptでencodeURIComponent()したurlを渡したらcgi.FieldStrage()がおかしくなる
jsからlocalhostで動いているpythonにリクエストを送ってます。
jsではget引数にmain.py?url={jsでencodeURIComponentしたURL}という形でリクエストしています。
受け取り側では
form = cgi.FieldStorage()
form['url'].value
という形で取得しています。
jsでencodeURIComponentする前のURLが「http://example.com/」のような場合には問題なく取得できるのですが「http://example.com/?hoge=fuga」のようにこちらにもget引数がついていると、その部分がcgi.FieldStorage()で取得されてしまい、逆に'url'というキーの値がない、という状態になっています。
こういう場合、pythonではどのように受け取るべきなのでしょうか。
ちなみに、リクエストしているURLを直接ブラウザで叩いても同じ状態になります。