我想JSON數據發送到一個REST服務,其中包括認證,但是當我嘗試運行這段代碼,它拋出一個RuntimeException
和HTTP代碼302
。但是鏈接通過REST客戶端正常工作。我認爲我的代碼無法將驗證細節提供給鏈接。發送POST數據到REST服務與認證
我已經嘗試了這麼多的組合,但它仍然沒有工作。任何人都可以建議我去哪裏錯了嗎?
JSONObject obj=new JSONObject(req); //JSON Object
ClientConfig clientConfig = new DefaultClientConfig();
clientConfig.getFeatures().put(JSONConfiguration.FEATURE_POJO_MAPPING,
Boolean.TRUE);
Client client = Client.create(clientConfig);
//Authentication filter
client.addFilter(new HTTPBasicAuthFilter("username", "password"));
WebResource webResource = client.resource(
"http://licruleswb-dev.cloudapps.cisco.com/LicenseRules/rest/invokeRule");
ClientResponse response = webResource.accept("application/json").type(
MediaType.APPLICATION_JSON_TYPE).post(ClientResponse.class, obj.toString());
if (response.getStatus() != 200) {
throw new RuntimeException("Failed : HTTP error code : " + response.getStatus());
}
這是錯誤:
ERROR:Exception in thread "main" java.lang.RuntimeException: Failed :
HTTP error code : 302
at Test2.main(Test2.java:64)
Test2的是我的課。
'302'通常表示重定向。嘗試設置'client.setFollowRedirects(Boolean.TRUE);'。 – user432 2015-03-25 08:17:04
你嘗試通過'http:// licruleswb-dev.cloudapps.cisco.com/LicenseRules/REST/invokeRule'是很容易得到從那裏你的代碼運行的服務器? – mario 2015-03-26 15:52:45
ya..It的工作完美fine..I已經試過很多次 – user3564975 2015-03-27 06:12:40