Tôi đang sử dụng mã này để gọi dịch vụ JAX-RS jersey sử dụng ứng dụng khách áo.JAX-RS jersey Khách hàng: Đọc phản hồi với mã trạng thái
public static void main(String[] args) {
ClientConfig config = new DefaultClientConfig();
Client client = Client.create(config);
WebResource service = client.resource(getBaseURI());
String msg = service.path("rest").path("ExceptionDemo").path("user").queryParam("id", "001").get(String.class);
System.out.println(msg);
}
private static URI getBaseURI() {
return UriBuilder.fromUri("http://localhost:8045/ExceptionHanlding").build();
}
Mã này hoạt động tốt khi mã trạng thái Response là 200. Nhưng đối với bất kỳ điều gì khác ngoài 200, mã này sẽ đưa ra ngoại lệ.
Cách sửa đổi mã này để dựa trên mã trạng thái của phản hồi, nó thực hiện một số hành động?
Cảm ơn bạn đã trả lời, nó đã giải quyết được sự cố của tôi. Tôi có thể thấy trong liên kết mà họ không sử dụng nó: 'EntityTag e = response.getEntityTag();'. cái này dùng như thế nào? – WhoAmI
Đặt một thời gian ngắn, thẻ thực thể xác định duy nhất hoặc gần duy nhất một cơ thể phản hồi để cho phép bộ nhớ đệm tốt hơn. Đọc thêm trong [HTTP spec] (http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11) hoặc trên [Wikipedia] (http://en.wikipedia.org/wiki/HTTP_ETag). –