Tag: httpurlconnection

上传时EPIPE(断管)?

我的代码有问题,但我不知道E日志报告在哪里 04-08 05:47:46.745: E/Upload Server(20080): Starting : /storage/sdcard1/Music/Piano (my favourites)/11 Tchaikovsky – The Music Lovers.mp3 04-08 05:47:47.136: E/Upload Server(20080): Connection Error : sendto failed: EPIPE (Broken pipe) 什么是(EPIPE)? ,当我尝试上传图像时,其上传成功,但任何其他文件E Cat报告(断管)为什么! 这是我的上传代码 @Override protected String doInBackground(String… urls) { String upLoadServerUri = “http://test.com/test.php”; String fileName = this.file_path; HttpURLConnection connection = null; DataOutputStream outputStream = null; String lineEnd […]

当代码已知时,HttpURLConnection.getResponseCode()会抛出IOException

为什么即使状态已知, HttpURLConnection.getResponseCode()也会抛出IOException ? Caused by: java.io.IOException: Server returned HTTP response code: 412 for URL: 这不是获取响应代码的问题,因为它是在exception消息中编写的。 我希望有一个选项来获取状态代码(即使它不是〜200)而没有得到exception,所以我将能够在我的代码中决定做什么。 完整堆栈跟踪: Caused by: java.io.IOException: Server returned HTTP response code: 412 for URL: at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1625) at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:468) … my code 更新我改变了服务器端实现以返回不同的状态代码(303),它现在正在工作(不抛出IOException)。 这意味着它与412具体相关。

httpurlconnection线程安全

HttpUrlConnection线程安全吗? 即如果我有一个连接到服务器的HttpConnection实例并且该实例被不同的线程使用(egtry同时发送POST),HttpUrlConnection将如何处理这种情况? a)他们是否会串行发送POST,或者b)第一个线程发送POST,获得响应,然后第二个线程将发送POST? 如果他们以串行方式发送POST,则意味着对同一tcp连接的多个活动POST。 这是允许的吗? 可以由服务器处理吗? 谢谢

在Java中检索给定URL的最终位置

我试图检索给定URL(String ref)的最终位置,如下所示: HttpURLConnection con = (HttpURLConnection)new URL(ref).openConnection(); con.setInstanceFollowRedirects(true); con.setRequestProperty(“User-Agent”,””); int responseCode = con.getResponseCode(); return con.getURL().toString(); 它适用于大多数情况,但很少返回包含另一个重定向的URL。 我在这做错了什么? 为什么即使在调用setInstanceFollowRedirects(true)之后我也得到responseCode = 3xx? 更新: 好的,responseCode有时可能是3xx。 如果它发生,那么我将返回con.getHeaderField(“Location”)。 现在的代码是: HttpURLConnection con = (HttpURLConnection)new URL(ref).openConnection(); con.setInstanceFollowRedirects(true); con.setRequestProperty(“User-Agent”,””); int responseType = con.getResponseCode()/100; while (responseType == 1) { Thread.sleep(10); responseType = con.getResponseCode()/100; } if (responseType == 3) return con.getHeaderField(“Location”); return con.getURL().toString(); 如果有人看到上面的代码有任何问题,请欣赏评论。 UPDATE […]

来自一个HttpURLConnection的几个请求

如何使用Java在一个HttpURLConnection中执行多个请求? URL url = new URL(“http://my.com”); HttpURLConnection connection = (HttpURLConnection)url.openConnection(); HttpURLConnection.setFollowRedirects( true ); connection.setDoOutput( true ); connection.setRequestMethod(“GET”); PrintStream ps = new PrintStream( connection.getOutputStream() ); ps.print(params); ps.close(); connection.connect(); //TODO: do next request with other url, but in same connection 谢谢。

HttpURLConnection:是否需要调用connect()?

我见过的很多例子都没有明确地调用connect() 。 相反,他们只使用getInputStream()或getResponseCode() 。 我假设所有这些需要连接的HttpURLConnection方法只调用connect()本身? 是否有任何必须为HttpURLConnection显式调用connect()情况?

HttpURLConnection c = URL.openConnection(); c.setRequestProperty()不起作用

这里的代码是一个普通的Java应用程序而不是android应用程序,它设计用于将带有YOUR_REGISTRATION_STRING的C2DM消息作为开发人员用auth_key发送到该设备,问题描述如下 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder; import javax.net.ssl.HostnameVerifier; import javax.net.ssl.HttpsURLConnection; import javax.net.ssl.SSLSession; public class C2DMSendMessage { private final static String AUTH = “authentication”; private static final String UPDATE_CLIENT_AUTH = “Update-Client-Auth”; public static final String PARAM_REGISTRATION_ID = “registration_id”; public static final String PARAM_DELAY_WHILE_IDLE = “delay_while_idle”; public static […]

Android:如何以编程方式登录网站并从中检索数据?

好的,伙计们,所以我最近开发的android应用程序将用户的ID和PASSWORD保存到SharedPreferences。 现在,当用户第二次启动应用程序时,他将通过listView中的一些选项直接重定向到MainActivity。 而现在我头疼得厉害,这让我变得非常疯狂。 我无法登录网站并将数据提取到手机。 我尝试过使用Http(s)UrlConnection,HttpClient,但它似乎对我不起作用。 我从POST方法得到的只是登录页面的源代码。 现在,有登录页面: https : //medeine.vgtu.lt/studentams/login.jsp?klb = en 和我的目标页面: https : //medeine.vgtu.lt/studentams/pask_stud.jsp < – 我需要从那里获取数据 你有任何想法或提示/方法/指南/任何如何做到这一点?

使用HttpURLConnection使用JSON数据发出PUT请求不起作用

我正在尝试使用Java中的HttpURLConnection使用JSON数据发出PUT请求。 我这样做的方式不起作用。 我没有错误,所以我不知道问题是什么。 public static void main(String[] args) { URL url; try { url = new URL(“http://fltspc.itu.dk/widget/515318fe17450f312b00153d/”); HttpURLConnection hurl = (HttpURLConnection) url.openConnection(); hurl.setRequestMethod(“PUT”); hurl.setDoOutput(true); hurl.setRequestProperty(“Content-Type”, “application/json”); hurl.setRequestProperty(“Accept”, “application/json”); String payload = “{‘pos’:{‘left’:45,’top’:45}}”; OutputStreamWriter osw = new OutputStreamWriter(hurl.getOutputStream()); osw.write(payload); osw.flush(); osw.close(); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) […]

如何在JAVA中的HttpURLConnection中发送PUT,DELETE HTTP请求

我有Restful WebServices,我发送POST和GET HTTP请求,如何使用JAVA在httpURLConection中发送PUT和DELTE请求HTTP。