做互联网应用,特别是大一点的项目,往往涉及到接口的联调,就是不同子项目之间的调用,而且不同子项目可能用不同语言开发的,今天有时间总结一下,
避免以后忘记
1、使用URLConnection
BufferedReader r = null;
String rs = "";
//url地址
URL u = new URL(myurl);
URLConnection uc = u.openConnection();
// 超时不候
uc.setReadTimeout(timeOut);
uc.setRequestProperty("Connection", "close");
uc.setConnectTimeout(timeOut);
uc.setDoOutput(true);
OutputStream output = uc.getOutputStream() ;
output.write(param.getBytes("utf-8")) ;//para为拼的参数 sid=a&id=2
output.flush() ;
r = new BufferedReader(new InputStreamReader(uc.getInputStream(),
"utf-8"));
String line;
StringBuffer buf = new StringBuffer();
while ((line = r.readLine()) != null) {
buf.append(line);
}
rs = buf.toString();
2、使用axis里的Service
String endpoint = "http://192.168.1.80/makephp_work/interface/sys_feed.php";
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL(endpoint));
//远程方法名称
call.setOperationName("sys_feed");
int s = (Integer) call.invoke(new Object[] { "aa", "1", "info",
"show", "show_1", 100 });
3、用httpClient,网上很多这样的例子,不细说