问题标签 [httpurlconnection]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - StringBuffer 不会将整个流读入字符串(JAVA/Android)
我正在制作一个使用 HttpURLConnection 检索网页内容的 android 程序。我是 Java 和 Android 的新手。
问题是:阅读器读取整个页面源,但在最后一次迭代中,它没有附加到 stringBuffer 的最后一部分。
使用调试器我已经确定,在最后一次循环迭代中,创建了字符串 buff,但 stringBuffer 只是不附加它。
我需要解析检索到的内容。有没有比使用字符串更好的方法来处理解析内容。我在许多其他网站上读过,Java 中的字符串大小仅受可用堆大小的限制。我也尝试过使用 StringBuilder 。
任何人都知道可能是什么问题。顺便说一句,随时建议对代码进行任何改进。
谢谢!
java - 使用 c# (VS2008) 的 WebRequest 可以完美运行,但不能在 Java (Ecplise) 上运行
我正在尝试从网页读取数据,我必须使用 Java 来完成。当我尝试在 Eclipse 中使用 Java 执行此操作时,出现超时错误:java.net.ConnectException:连接超时:连接(使用 HttpURLConnection):
为了了解问题出在哪里,我尝试使用 c# 和 VS2008 执行相同的任务,它工作得非常好,根本没有超时。
我在工作中这样做,所以有防火墙,但我没有关于它的信息。
这可能是什么原因?
谢谢!丹尼尔
java - java中的连接超时?
HttpURLConnection
如果在完成之前超时,有什么方法可以触发事件?
java - Java中HttpURLConnection中的荒谬连接超时
在我的一个应用程序中,我们使用 HttpURLConnection 访问了另一台服务器 - 该应用程序运行了几个月,但现在突然所有命中都面临连接超时。间歇性地,少数调用(500 次中的 1 次)成功,而其他所有调用均失败。该应用程序部署在运行 Java 5 和 Tomcat 5.5 的 Linux 上。我已经从命令行尝试了curl和wget ,它们工作正常。
另一个使用完全相同代码库的 Java 进程能够从命令行建立连接。我们已经重新启动了tomcat服务器以及机器,但无济于事。我们已经彻底检查了机器,没有阻塞进程/防火墙阻碍这一点(显然其他 Java 进程能够建立连接)。
在间歇性突发(比如每天一次)中,应用程序能够建立一些连接,然后返回到中断状态。从堆栈跟踪中也看不到太多。
有什么建议可能会出错吗?
[更新] 如果在应用程序运行时服务器 DNS 发生更改,Java 将不会选择此内容,并且旧 IP 的连接将超时(考虑到 IP 已关闭)。因此,在 CDN 的情况下,如果一个节点出现故障并被另一个 IP 替换,则可能会出现问题。
java - HttpURLConnection 被锁定
我有一个在tomcat下运行的线程,它创建一个HttpUrlConnection并通过BufferedInputStream读取它。
在获取某些 url 的数据后,它会停止。我得到了进程的 jstack,它说 HttpUrlConnection 被锁定并且 BufferedInputStream 也被锁定。
有人可以在这里帮忙。谢谢
java - 循环内的 HttpURLConnection
我正在尝试连接到一个我知道存在但我不知道何时存在的 URL。我无权访问此服务器,因此无法更改任何内容来接收事件。
实际代码是这样的。
Java 不是我最好的技能,从性能的角度来看,我不确定这段代码是否良好。我每 3 秒打开一个新连接?或者连接被重用?
如果我调用 disconnect() 我确保循环中没有打开新连接,但是......它会影响性能吗?
建议?知道 URL 存在的快速/最佳方法是什么?
java - HttpURLConnection 不读取整个响应
我使用 HttpURLConnection 进行 HTTP POST,但我并不总是得到完整的响应。我想调试这个问题,但是当我逐步检查每一行时它都起作用了。我认为这一定是时间问题,所以我添加了 Thread.sleep,它确实使我的代码工作,但这只是一个临时的解决方法。我想知道为什么会发生这种情况以及如何解决。这是我的代码:
稍后我执行以下操作来读取输入流
它生成以下 HTTP 标头
在其他帖子中,建议使用
系统属性,我试过了,标题改为
Connection 标头是“关闭”,但我仍然无法阅读整个响应。知道我做错了什么吗?
java - POST 似乎不适用于来自 HttpURLConnection 的表单
我正在尝试使用 java 登录到报告系统。到目前为止,我已经尝试了许多使用 HttpURLConnection 的不同实现。我试图发布的 HTML 归结为:
我知道这个表单提供了有效的输入,因为当我在浏览器中单击提交时,它会将我登录到我的报告系统中。但是,当我发送编程请求时,我总是将上述 html 作为响应返回。注意我已经尝试了大约一百万个使用 HttpURLRequest 的实现。一个例子:
其中“参数”的范围从零到我发布的 HTML 中的每个 URL 编码参数,并且连接(当前,如我尝试过的其他配置)设置如下:
我知道细节有点稀疏,所以如果您需要更多信息,请告诉我,非常感谢您的任何意见!
java - 如何使用 HTTP POST 从 Java 应用程序发送 XML 并在服务器上使用 PHP 打印它?
通常当我得到 POST 数据时,它是从 HTML 表单发送的,并且参数有名称,即 from <input type="text" name="yourname" />
,然后我可以使用 php 接收和打印这些数据echo $_POST['yourname'];
。
现在我正在实现一个 Java 应用程序,它应该将 XML 格式的数据 POST 到指定的 URL。我写了一个简单的 PHP 页面,我可以尝试向其发布数据,但没有打印数据。而且由于没有任何参数的名称,我不知道应该如何用 PHP 打印它。
我尝试将简单的 XML 发送到服务器,服务器应该响应MESSAGE: <XML>
,但它只响应MESSAGE:
. 我究竟做错了什么?
这是我在服务器上的 PHP 代码:
这是我在客户端上的 Java 代码:
java - httpurlconnection 线程安全
HttpUrlConnection 线程安全吗?即,如果我有一个连接到服务器的 HttpConnection 实例,并且该实例被不同的线程使用(例如尝试同时发送 POST),HttpUrlConnection 将如何处理这种情况?a)他们会串行发送 POST,还是 b)第一个线程发送 POST,获取响应,然后第二个线程将发送 POST?如果他们串行发送 POST,这意味着多个活动 POST 到同一个 tcp 连接。这是允许的吗?它可以由服务器处理吗?
谢谢