java - 在 Java 中获取同一 URL 的不同响应代码

标签 java httpurlconnection

我需要检查 URL 的响应代码是否为 200。在循环处理 URL 数组时,我得到其中一些 URL 的值为 200,其他 URL 的值为 503。即使所有 URL 都是有效的,并且在不循环运行时返回 200。

for (int i = 0; i < 10; i++) {
    URL url = new URL("https://www.amazon.in/dp/B01N6TDY3Y");
    HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
    int status = urlConnection.getResponseCode();
    System.out.println(status);
}

此代码每次打印不同的状态。这次是: 200 200 200 200 200 200 503 200 503 200.
即使每次的 url 都相同。知道为什么吗?

最佳答案

对于给定的 url,响应代码并不总是相同。这取决于处理请求时发生的情况或应用程序设计者的决定。

200 表示一切顺利 503表示出现问题,可能是线程池耗尽,无法处理请求。

通常,当您请求 API 或端点时,您应该在开发代码之前知道服务器将返回哪些代码给您的调用。

检查这个Http codes

关于java - 在 Java 中获取同一 URL 的不同响应代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48376558/

相关文章:

java - 通过 Android 连接到 Neo4j - 不可能完成的任务?

java - 我正在尝试通过实现异步任务在 android (java) 中流式传输 chatgpt api 的响应(逐字),但我收到错误

java - 解析异常 : At line 1, 第 0 列:未找到元素

java - RecyclerView 无法水平滚动,但可以垂直滚动(加载图像失败)

java - 如何在运行 Aeron 示例时设置 Aeron 订阅者和发布者数量限制

java - 如何在 Dialogflow Java API 中创建 SessionsClient 时传递 key json 文件

java - 访问 URL 的特定部分

java - 对带有重音符号等特殊字符的数组进行排序

java - 访问 AST 类时出错

java - 如何在PHP服务器上显示android POST字符串?