如何读取响应标题+;使用scala'从单柱上拆下阀体;s调度库

如何读取响应标题+;使用scala'从单柱上拆下阀体;s调度库,scala,httpclient,scala-dispatch,Scala,Httpclient,Scala Dispatch,我一直在尝试使用该库通过http POST请求下载文件。服务器返回一个“contentdisposition”头,表示它返回的数据文件的文件名 我已经成功地将整个响应体作为字符串读取 http(r >~ { (x) => println(x.getLines.mkString("","\n","")) }) 自己读取响应头 http(r >:> { (x) => println(x) }) 为响应体获取一个BufferedReader http(r >&g

我一直在尝试使用该库通过http POST请求下载文件。服务器返回一个“contentdisposition”头,表示它返回的数据文件的文件名

我已经成功地将整个响应体作为字符串读取

http(r >~ { (x) => println(x.getLines.mkString("","\n","")) })
自己读取响应头

http(r >:> { (x) => println(x) })
为响应体获取一个BufferedReader

http(r >> { (x,c) => (new BufferedReader(new InputStreamReader(x,c))).readLine })
如何使用dispatch lib一次性获取响应头和响应体?这些文档非常稀少,我对Scala还不熟悉

短暂性脑缺血发作


Michael

Dispatch使用处理程序处理来自请求的HTTP响应。它为执行例行任务提供了几个方便的快捷方式,如您在问题中概述的快捷方式,如生成InputStream、以字符串形式返回内容或查看响应的标题。还有一个方法,它由两个单独的处理程序组成,并在同一个请求上执行它们。下面是使用该处理程序解决问题的方法:

val ret = http(req >+ { r => (r as_str, r >:> { _("Content-Disposition") }) })
返回值是一个Tuple2,在本例中,它包含一个作为网页内容的字符串和另一个作为内容处置头值的字符串