http Client 요청 및 데이터 반환 처리
7066 단어 JAVA
import java.io.IOException;
import java.net.URLDecoder;
import net.sf.json.JSONObject;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.jspxcms.core.domain.Auth;
public class HttpRequestUtils {
private static Logger logger = LoggerFactory.getLogger(HttpRequestUtils.class); //
/**
* httpPost
* @param url
* @param jsonParam
* @return
*/
public static JSONObject httpPost(String url,JSONObject jsonParam){
return httpPost(url, jsonParam, false);
}
/**
* post
* @param url url
* @param jsonParam
* @param noNeedResponse
* @return
*/
public static JSONObject httpPost(String url,JSONObject jsonParam, boolean noNeedResponse){
//post
DefaultHttpClient httpClient = new DefaultHttpClient();
JSONObject jsonResult = null;
HttpPost method = new HttpPost(url);
try {
if (null != jsonParam) {
//
StringEntity entity = new StringEntity(jsonParam.toString(), "utf-8");
entity.setContentEncoding("UTF-8");
entity.setContentType("application/json");
method.setEntity(entity);
}
HttpResponse result = httpClient.execute(method);
url = URLDecoder.decode(url, "UTF-8");
/** , **/
if (result.getStatusLine().getStatusCode() == 200) {
String str = "";
try {
/** json **/
str = EntityUtils.toString(result.getEntity());
if (noNeedResponse) {
return null;
}
/** json json **/
jsonResult = JSONObject.fromObject(str);
} catch (Exception e) {
logger.error("post :" + url, e);
}
}
} catch (IOException e) {
logger.error("post :" + url, e);
}
return jsonResult;
}
/**
* get
* @param url
* @return
*/
public static JSONObject httpGet(String url){
//get
JSONObject jsonResult = null;
try {
DefaultHttpClient client = new DefaultHttpClient();
// get
HttpGet request = new HttpGet(url);
HttpResponse response = client.execute(request);
/** , **/
if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
/** json **/
String strResult = EntityUtils.toString(response.getEntity());
/** json json **/
jsonResult = JSONObject.fromObject(strResult);
url = URLDecoder.decode(url, "UTF-8");
} else {
logger.error("get :" + url);
}
} catch (IOException e) {
logger.error("get :" + url, e);
}
return jsonResult;
}
public static void main(String[] args) {
String username = "admin";
String password = "123";
Auth user = new Auth();
user.setClientId(username);
user.setClientSecret(password);
JSONObject json =JSONObject.fromObject(user);
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JAVA 객체 작성 및 제거 방법정적 공장 방법 정적 공장 방법의 장점 를 반환할 수 있습니다. 정적 공장 방법의 단점 류 공유되거나 보호된 구조기를 포함하지 않으면 이불류화할 수 없음 여러 개의 구조기 파라미터를 만났을 때 구축기를 고려해야 한다...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.