ajaxで送信されたパラメータをPython(正確に言うと、GoogleAppEngine)でキャッチすることはできたのですが、そこからURLエンコードするのに苦戦をしてしまいましたので、その方法を紹介。
import urllib ajaxparam = self.request.get('hoge') ajaxparam = ajaxparam.encode('utf-8') ajaxparam = urllib.quote_plus(ajaxparam) |
上のサンプルコードでは、ajaxparamがajaxでキャッチしたパラメータになります。
いきなり、urllib.quote_plus(ajaxparam)を実行すると、エラーになります。
(ちょーど下のような感じ)
import urllib ajaxparam = self.request.get('hoge') ajaxparam = urllib.quote_plus(ajaxparam) |
これは、ajaxparam変数が、文字列かつエンコードが、UTF-8として認識されていないからだと思い、ajaxparam.encode('utf-8')を追加したら、正常終了することはできました。
参考
pythonのurlエンコードが酷い件について
Tweet
0 コメント:
コメントを投稿