在 HTTP 代码的世界中,每个服务器响应就像来自宇宙另一端的消息。您发送了一个请求,现在这个神秘的代码出现在屏幕上。这是什么意思?我们应该如何理解呢?让我们弄清楚如何捕获来自服务器的信号而不陷入陷阱。
服务器就像一位好老教授。他不会每次都写长信。它在响应中使用 HTTP 代码或三位数信号来帮助您(和其他开发人员)了解正在发生的情况。他们被分为五个类别,如受人尊敬的年龄段,从明智的信息型(1xx)到反复无常的错误型(4xx和5xx)。
这是我们的主要角色:
如何判断服务器是否满意?代码 2xx
服务员就像任何内向的人一样,如果你做的一切都正确的话,他会很高兴。以下是他的认可信号:
HttpURLConnection connection = (HttpURLConnection) new URL("https://easy.java.com/data").openConnection(); connection.setRequestMethod("GET"); if (connection.getResponseCode() == 200) { System.out.println("Сервер сказал ОК! Тянем данные..."); }
这里可能已经存在问题,例如您不小心**开错了门**。
int responseCode = connection.getResponseCode(); if (responseCode == 404) { System.out.println("Сервер говорит, что ничего не нашел."); } else if (responseCode == 401) { System.out.println("Ой, кажется, сюда нужен пароль."); }
然后服务器就受不了了。他想要工作,但某个地方明显出了问题。
当您使用 Spring 时,您有一个用于请求的 RestTemplate 和 WebClient。它们允许您像真正的渔夫一样捕获服务器响应。
HttpURLConnection connection = (HttpURLConnection) new URL("https://easy.java.com/data").openConnection(); connection.setRequestMethod("GET"); if (connection.getResponseCode() == 200) { System.out.println("Сервер сказал ОК! Тянем данные..."); }
WebClient 是一款适合那些不害怕以“等待,但不立即”风格工作的人的工具。就好像你在说:“服务器,尽力而为,我现在就等。”
int responseCode = connection.getResponseCode(); if (responseCode == 404) { System.out.println("Сервер говорит, что ничего не нашел."); } else if (responseCode == 401) { System.out.println("Ой, кажется, сюда нужен пароль."); }
检查超时 - 有时服务器会冻结,你应该准时吃午饭。设置等待时间。
不要忘记日志记录 - 每个代码都很重要!记录答案,您将始终能够了解出了什么问题。
与 4xx 和 5xx 合作 - 从错误中学习。您处理此类回复的越好,您的应用程序就会越稳健。
服务器是一个反复无常的生物,每次你从它收到代码时,就像你在解谜题一样。但是,了解基本代码及其含义,您可以快速了解您的要求!
记住:HTTP 代码是 Java 代码和服务器之间的通信语言。知道如何阅读它,服务器就会永远开心。
以上是Java HTTP 代码指南:如何了解服务器想要从您那里得到什么?的详细内容。更多信息请关注PHP中文网其他相关文章!