一般API接收客户端(比如网页、APP或其他应用服务)的请求,但在测试时需要模拟来自外界的请求,经探索,使用HttpComponentshttpClient可模拟Post提交请求。
此处用HttpComponents的httpclient来完成使命。
import org.apache.http.HttpEntity ; import org.apache.http.HttpResponse ; import org.apache.http.client.HttpClient ; import org.apache.http.client.methods.HttpPost ; import org.apache.http.impl.client.DefaultHttpClient ; import org.apache.http.util.EntityUtils ; import org.junit.Test ; import java.io.IOException ; /** * 测试接口 * Created by jiangzhq on 2015/7/10. */ public class ApiTest { @Test public void testPost () throws IOException { HttpClient client = new DefaultHttpClient() ; HttpPost post = new HttpPost("http://127.0.0.1:8080/app/index" ) ; post.setHeader( "storeId" ,"1456" ) ; post.setHeader( "platform" , "IOS" ) ; post.setHeader( "device" , "Iphone6 plus" ) ; post.setHeader( "venderId" , "5" ) ; HttpResponse response = client.execute(post) ; if (response.getStatusLine().getStatusCode() == 200 ) { HttpEntity resEntity = response.getEntity() ; String message = EntityUtils. toString(resEntity , "utf-8") ; System. out .println(message); } else { System. out.println(response.getStatusLine().getStatusCode()) ; System. out .println("请求失败" ) ; } } }