私は、リダイレクトを処理するスカラーでhttpクライアントを探しています。リダイレクトを処理する、スカラーのURLの内容を取得するにはどうすればよいですか?リダイレクトを処理するスカラーでhttpクライアントを探します
私はscala.io.Sourceの例を見ましたが、リダイレクトを処理しません。
私は、リダイレクトを処理するスカラーでhttpクライアントを探しています。リダイレクトを処理する、スカラーのURLの内容を取得するにはどうすればよいですか?リダイレクトを処理するスカラーでhttpクライアントを探します
私はscala.io.Sourceの例を見ましたが、リダイレクトを処理しません。
あなたは(おそらくおもちゃの例を越えて何のために良いです)HttpClientのようなものを使用しない場合、あなたはURLConnection
といじくり回すことができます。
def urlToStream(url: String) = Source.fromInputStream(
(new java.net.URL(url).openConnection match {
case connection: java.net.HttpURLConnection => {
connection.setInstanceFollowRedirects(true)
connection
}
case connection => connection
}).getInputStream
)
これはプロトコル場合は、次のリダイレクトをオンにしますHTTPです。
これは、ワイド文字に出会うたびに例外をスローします。java.nio.charset.MalformedInputException:入力の長さ= 1。エンコーディングをISO-8859-1に設定すると、それは私のために機能します。 IOW、コードを}に変更します。getInputStream、 "IOS-8859-1" – Sniggerfardimungus
Dispatchをチェックしましたか? http://dispatch.databinder.net/Dispatch.html
これはHttpClientをラップするので、HttpClientは何でもできますが、Scalaの方法で行うことができます。 IMO、それは奇妙な演算子で少し重いですし、より多くのものを綴るべきですが、私はそれを1年か2年使っていて、それについて多くのことを好きです。
Finagleからbuild a clientまでご利用いただけます。それはかなり低いレベルですが、HttpRequest => Future[HttpResponse]
レベルで直接作業しているので、リダイレクトを処理するには少量の作業が必要です。
Scala専用ライブラリを探していますか?いくつかのJavaライブラリがあります。 –
はい、私はそれにスカラーを探しています_。 Javaではおそらくjakarta commons httpクライアントを使用します。 httpコンテンツを取得するためのさらに多くの方法がありますか? –
既存のScalaコードを受け取り、リダイレクト処理を追加できませんでしたか? –