いくつかのテキストをURLエンコードしたいとします(たとえば、各スペースを%20などに置き換えてください)。私は "HTTP" Network.HTTP.Base.urlEncodeを見つけてそれを使うことができましたが、通常はYesodエコシステムで使用されているものがあるかどうか疑問に思っています。Yesodエコシステムでは、テキストを読み込むにはどのような方法が最適ですか?
答えて
URLエスケープの複雑さのために、実際の答えは「それは依存しています」です。たとえば、パスセグメントとクエリ文字列のパーセントエンコーディングのルールは少し異なります。
エンコードしようとしているものは正確にはわかりませんが、http-typesパッケージに固執することをおすすめします。 1つの場所はurlEncodeとなりますが、そのパッケージには他の多くの機能があります(例えば、@jamshidhが言及したencodePathSegments
など)。
マイケルとジャムシッドありがとう! – Tad
詳細:http://stackoverflow.com/questions/33704839/discrepancies-of-percent-encoding-for-urls –
私が理解しているように、URIエンコーディングは複雑です。しかし私の単純なケースでは、私はuri-encodeパッケージで手に入れることができました。
私は必要なすべてがあった。
encode :: String -> String
あなたが想像できるように、それは文字列を取り、URIエンコードされたバージョンをあなたにお返ししないすべて。
- 1. mysqlimport、どのように適切なテキストを読み込むには?
- 2. 大量のテキストをasp.netに読み込むのに最適なコントロールですか?
- 3. JavaでXmlFormatter形式のログファイルを読み込むのに最適な方法は?
- 4. GCSからBigQueryにファイルを読み込む - 最適なアプローチは何ですか?
- 5. Python:ファイルを行単位で読み込む最も最適な方法
- 6. XMLテキスト(属性ではない)をfloatに読み込む方法は?
- 7. IIS 6サーバー上で実行されているWebアプリケーションを読み込むには、どのような方法が最適ですか?
- 8. 最後にストリームを読み込むObservableを作成する適切な方法は何ですか
- 9. フォームを読み込んで、そのフォームにユーザーが適用した変更を読み込む方法は?
- 10. Androidで長いテキストファイルを読み込むにはどのようなスレッド方法を使用できますか?
- 11. Cでファイルを読み込むための最適なバッファサイズ
- 12. ランダムなレベルを読み込むにはどうすればよいですか?
- 13. テキストと数値のデータを含むファイルを読み込むにはどうすればよいですか?
- 14. Loopbackで設定パラメータを読み込む最も適切な方法は何ですか?
- 15. Blockly変数をプログラムで読み込んで読み込むにはどうすればよいですか?
- 16. iOSアプリケーションでファイルを読み込んで読み込むにはどうすればよいですか?
- 17. セレンのWebドライバでURLを読み込むにはどのアプローチが最適ですか?
- 18. MongoDB - データの保存と読み込みに最適な方法
- 19. word2vecベクトルはどのように読み込むことができますか?
- 20. PHPでdllを読み込む最良の方法は何ですか?
- 21. テキストファイルで最後の行を読み込む最良の方法
- 22. "メインではない"プロセスでコンソールから読み込む方法
- 23. アンドロイドでのローカルキャッシュにはどのような方法が最適ですか?
- 24. QtDesignerでQMovieを読み込むにはどうすればよいですか?
- 25. 非同期でテキストを音声に読み込む方法
- 26. Graph APIを使用してパブリックデータを読み込むにはどのような方法がありますか?
- 27. JDK 1.6で.mp3からデータを読み込むのに最適なアドオン
- 28. StorageFileをストリングにエンド・ツー・エンドで読み込む最も簡単な方法は?
- 29. 入力の上にテキストを配置するにはどのような方法が最適ですか?
- 30. Python:大きな.csvファイルを読むには最適な方法ですか?
いくつかの調査の後、 "http-conduit" Network.HTTP.Conduit.parseUrlが "network" Network.URIから(escapeURIString isAllowedInURI)を使用することがわかりました。これは他のイエス様が使うものですか? – Tad
コードをGrepして、私はYesod.hsのjoinPathがNetwork.HTTP.Types.encodePath/encodePathSegmentsを使ってパスを作成していることを発見しました。これは他のものの中でエスケープしています。これはエスケープされたURLを作成するためのものですしかし、(テキストではなく)解析されたパスオブジェクトから。 – jamshidh