Java 는 HttpClient 를 사용 하여 Post 요청 을 실현 합 니 다.
3463 단어 httpclientpost 요청HttpClient
import org.apache.http.Header;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.CoreConnectionPNames;
import java.util.UUID;
import net.sf.json.JSONObject;
import java.nio.charset.Charset;
public static boolean httpPostWithJson(JSONObject jsonObj,String url,String appId){
boolean isSuccess = false;
HttpPost post = null;
try {
HttpClient httpClient = new DefaultHttpClient();
//
httpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 2000);
httpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 2000);
post = new HttpPost(url);
//
post.setHeader("Content-type", "application/json; charset=utf-8");
post.setHeader("Connection", "Close");
String sessionId = getSessionId();
post.setHeader("SessionId", sessionId);
post.setHeader("appid", appid);
//
StringEntity entity = new StringEntity(jsonObj.toString(), Charset.forName("UTF-8"));
entity.setContentEncoding("UTF-8");
// Json
entity.setContentType("application/json");
post.setEntity(entity);
HttpResponse response = httpClient.execute(post);
//
int statusCode = response.getStatusLine().getStatusCode();
if(statusCode != HttpStatus.SC_OK){
LogUtil.info(" : "+statusCode);
isSuccess = false;
}else{
int retCode = 0;
String sessendId = "";
// retCode Id
for(Header header : response.getAllHeaders()){
if(header.getName().equals("retcode")){
retCode = Integer.parseInt(header.getValue());
}
if(header.getName().equals("SessionId")){
sessendId = header.getValue();
}
}
if(ErrorCodeHelper.IAS_SUCCESS != retCode ){
//
LogUtil.info("error return code, sessionId: "sessendId"\t"+"retCode: "+retCode);
isSuccess = false;
}else{
isSuccess = true;
}
}
} catch (Exception e) {
e.printStackTrace();
isSuccess = false;
}finally{
if(post != null){
try {
post.releaseConnection();
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
return isSuccess;
}
// Id
public static String getSessionId(){
UUID uuid = UUID.randomUUID();
String str = uuid.toString();
return str.substring(0, 8) + str.substring(9, 13) + str.substring(14, 18) + str.substring(19, 23) + str.substring(24);
}
// json
JSONObject jsonParam = new JSONObject();
jsonParam.put("name", "admin");
jsonParam.put("pass", "123456");
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
HttpClient 'GET' - 각도 단순화이봐, 친구들. 오늘 저는 API를 호출하는 Angular의 방법을 분석하고 싶습니다. 각 CRUD 작업에 대한 기사를 작성할 예정이므로 눈을 떼지 말고 팔로우하십시오! 이것이 기본이며 Angular 웹 사이트에서 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.