1
新澤西州的WebMethod接收JSON和返回JSON,我創建了一個客戶端後用gzip編碼的JSON,我不知道它是編碼的JSON張貼正確的方式,我想確認請求正文是否真的被壓縮?後gzip壓縮JSON澤西服務
這是球衣的WebMethod
@POST
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
@Path("/getgzip")
public RPGZIP postDocument(RGZIP gzip){
RPGZIP _response = new RPGZIP();
_response.rpid = gzip.docid;
_response.rpdata = gzip.docdata;
return _response;
}
這是客戶端類消費球衣
import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.client.Entity;
import javax.ws.rs.core.Response;
import com.gzip.RGZIP;
import org.glassfish.jersey.message.GZipEncoder;
public class rclient {
public static void main(String[] args){
String REST_URI =
"http://localhost:8084/TestGZip/webresources/gzip/getgzip";
Client client = ClientBuilder.newClient();
client.register(GZipEncoder.class);
RGZIP rzip = new RGZIP();
rzip.docid = 1234;
rzip.docdata = "Working..";
Response r =
client.target(REST_URI).request(MediaType.APPLICATION_JSON)
.post(Entity.entity(rzip, MediaType.APPLICATION_JSON));
System.out.println(r.readEntity(String.class));
}
}
我的同事試圖張貼壓縮JSON澤西方法,他獲得套接字錯誤?他告訴我我應該添加並註冊gzip ReaderInterceptor來使用壓縮的請求? – Siva
你在說「消費」還是閱讀? – Optional
我已經從NetBeans檢查請求的頭部和上述代碼不設定內容編碼的。如何設置內容編碼? – Siva