ELMでpostが必要になり、情報をさがしました。
https://nulab.com/ja/blog/nulab/elm-introduction-tutorial-2/
を 参考にさせていただきました。
Http.post
{ url = ”/path”
, body =Http.stringBody "application/x-www-form-urlencoded"
("komoku1="
++ komoku1
++ "&komoku2="++komoku2
)
, expect=Http.expectString GotText
}
のような感じで使えるようです。
bottleと組み合わせて、使っていましたが、bottleのrouteで、全角文字は使えないので、どうしようかと考えた結果、Postで全角データを渡すことで解決。
なお、Pythonでは
urllib.parse.unquoteを使えばデコードができる。
ajaxの送信側では、全角文字のエンコードは自動でやってくれるようだ。
ただ、それでも<img src=...>による画像表示の中に全角文字が入るとどうしようもない。そこで、画像ファイルについては、md5によるハッシュで変換することで解決した。
CybozuLabs.MD5.calcを使わせていただきました。
https://labs.cybozu.co.jp/blog/mitsunari/2007/07/md5js_1.html
なお、Python側でもmd5ハッシュを使おうとしましたが、javascript側での計算値と一致させる方法がわからず、javascript側から、ハッシュ値をpython側に送って使うようにして解決。Hashの基本的使い方がまだ勉強不足。
0 件のコメント:
コメントを投稿