jjzjj

HttpURLConnection

全部标签

Java Httpurlconnection 多IP地址的DNS解析

我正在使用Java的HttpUrlConnection来访问foo.comfoo.com有多个指向不同IP地址(1.1.1.1和1.1.1.2)的A记录如果我的第一个连接调用解析为1.1.1.1,但随后该机器出现故障,后续的连接调用是否会识别到这一点并尝试连接到1.1.1.2?或者我是否需要使用INetAddressAPI自己实现这种逻辑? 最佳答案 我使用ApacheCommonsHttpClient解决了这个问题,请参阅下面的代码片段。正如我担心的那样,java.net提供的URLConnection是一个非常简单的实现,只会尝

java - 如果 Tomcat 服务器说 "Client Aborted",而客户端说 "Premature EOF",谁是对的?

我有一个Tomcat服务器通过http将数据流式传输到Java客户端。它将字节从文件复制到servlet中的HTTPServletResponse输出流。客户端使用HttpURLConnection连接并读取数据。有时一切正常,有时客户端和服务器都会抛出异常。客户说有一个“过早的EOF”。服务器声明“ClientAbortException”。是不是只有上述一种可能?客户:java.io.IOException:PrematureEOFatsun.net.www.http.ChunkedInputStream.fastRead(ChunkedInputStream.java:234)a

java - 带有 http-header "Accept"的 HttpURLConnection GET 请求

我已经阅读了一些相关问题,但不幸的是他们没有回答我的问题,因为我有特定的要求。也许这是个愚蠢的问题,但我如何使用httpURLConnection和http-header“Accept”请求(GET)JSON响应?我在文档中找到了一个片段,但我不确定如何去做。Accept="Accept"":"#(media-range[accept-params]) 最佳答案 我看不出你在说什么编程语言,所以我假设它是Java,因为这是搜索httpURLConnection时弹出的第一个东西。如果是这样的话,那么你就可以写URLurl=newUR

java - 如何从 Java 执行 HTTP 清除?

我正在尝试像这样使用HttpUrlConnection执行PURGE:privatevoidcallVarnish(URLurl){HttpURLConnectionconn=null;try{conn=(HttpURLConnection)url.openConnection();conn.setRequestMethod(PURGE_METHOD);conn.setDoOutput(true);conn.setInstanceFollowRedirects(true);conn.setRequestProperty("Host","www.somehost.com");conn.c

java - HttpURLConnection 不读取整个响应

我使用HttpURLConnection执行HTTPPOST,但我并不总能得到完整的响应。我想调试这个问题,但是当我逐行检查它时,它就起作用了。我认为这一定是一个时间问题,所以我添加了Thread.sleep,它确实使我的代码工作,但这只是一个临时的解决方法。我想知道为什么会发生这种情况以及如何解决。这是我的代码:publicstaticInputStreamdoPOST(Stringinput,StringinputMimeType,Stringurl,MaphttpHeaders,StringexpectedMimeType)throwsMalformedURLException,

Java HTTPUrlConnection 返回 500 状态码

我正在尝试使用HTTPUrlConnection获取一个url,但是我总是得到一个500代码,但是当我尝试从浏览器或使用curl访问相同的url时,它工作正常!这是代码try{URLurl=newURL("theurl");HttpURLConnectionhttpcon=(HttpURLConnection)url.openConnection();httpcon.setRequestProperty("Accept","text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");httpcon.setReque

当我调用 connect() 时,Java HttpURLConnection 没有连接

我正在尝试编写一个程序来对我的网络应用程序进行自动化测试。为此,我使用HttpURLConnection打开了一个连接。我尝试测试的其中一个页面执行302重定向。我的测试代码如下所示:URLcurrentUrl=newURL(urlToSend);HttpURLConnectionconnection=(HttpURLConnection)currentUrl.openConnection();connection.connect();system.out.println(connection.getURL().toString());那么,假设urlToSend是http://www

java - 是否可以使用 HttpClient 下载 PDF 等文件?

我在这里找到了一些关于如何下载文件的示例,但其中大多数似乎都在使用HttpURLConnection。是否可以使用HttpClient下载文件? 最佳答案 使用httpclient非常简单。这是它的教程的链接。http://hc.apache.org/httpcomponents-client-ga/tutorial/html/fundamentals.html#d5e43HttpClienthttpclient=newDefaultHttpClient();HttpGethttpget=newHttpGet(urltofetch)

java - Spring RestTemplate 将响应流式传输到另一个请求中

我正在尝试使用spring的RestTemplate将文件下载的结果直接流式传输到另一篇文章中我目前的做法如下:ResponseEntitydownloadResponse=restTemplate.getForEntity(fileToDownloadUri,InputStreamResource.class);InputStreamResourceimageInputStreamResource=downloadResponse.getBody();ResponseEntityresponse=restTemplate.exchange(storageUri,POST,newHtt

java - 如何使用 HttpURLConnection 和 Java 中的 CookieManager 为每个连接使用不同的 cookie

我需要使用HttpURLConnection同时从多个线程连接到一个网站,但每个连接使用不同的cookie。由于Java仅支持设置全局CookieManager,因此我实现了以下hack。我没有调用CookieHandler.setDefault(newCookieManager()),而是实现了一个使用不同CookieStore实例的自定义CookieHandler对于每个线程,在每次请求后清除。我根据sourcecode创建了名为SessionCookieManager的类的CookieManager。cookieJar成员变量已被删除,其用法已被替换为getCookieStore