我想知道如何获取具有指定标头和指定IP地址的URL(如Source.fromURL)的源代码(执行代码的机器不能只有几个ip地址绑定)。
我怎样才能做到这一点?
谢谢。
答案 0 :(得分:6)
我认为你可以这样做:
import io.Source
import java.net.URL
val stackOverflowURL = "http://69.170.135.92:80"
val requestProperties = Map(
"User-Agent" -> "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
)
val connection = new URL(stackOverflowURL).openConnection
requestProperties.foreach({
case (name, value) => connection.setRequestProperty(name, value)
})
print(Source.fromInputStream(connection.getInputStream).getLines.mkString("\n"))
答案 1 :(得分:1)
基于this other answer,它看起来像在当前版本的java(6/7)中,没有很好的方法来发出绑定到特定本地地址的HTTP请求。 (过去工作的直接代理方法现在似乎被明确阻止了。)这个答案使得它看起来像一个relatively easy way是使用Apache commons HttpClient,它允许你指定要绑定的本地地址。