今天在做日志存储时, 因为我们的系统与日志系统是两个不同的项目, 所以要进行跨域的数据操作.
public class SendJson {
public void send(String urlPath,String param) throws IOException{
//建立连接
URL url=new URL(urlPath);// urlPath 为路径 param 为你要传输的参数
HttpURLConnection httpConn=(HttpURLConnection)url.openConnection();
//设置参数
httpConn.setDoOutput(true); //需要输出
httpConn.setDoInput(true); //需要输入
httpConn.setUseCaches(false); //不允许缓存
httpConn.setRequestMethod("POST"); //设置POST方式连接
//设置请求属性//
httpConn.setRequestProperty("Content-Type", "application/json");
httpConn.setRequestProperty("Connection", "Keep-Alive");// 维持长连接
httpConn.setRequestProperty("Charset", "UTF-8");
//连接,也可以不用明文connect,使用下面的httpConn.getOutputStream()会自动connect
httpConn.connect();
//建立输入流,向指向的URL传入参数
DataOutputStream dos=new DataOutputStream(httpConn.getOutputStream());
dos.write(param.getBytes("UTF-8"));
dos.flush();
dos.close();
//获得响应状态
int resultCode=httpConn.getResponseCode();
if(true){
StringBuffer sb=new StringBuffer();
String readLine=new String();
BufferedReader responseReader=new BufferedReader(new InputStreamReader(httpConn.getInputStream(),"UTF-8"));
while((readLine=responseReader.readLine())!=null){
sb.append(readLine).append("\n");
}
responseReader.close();
System.out.println(sb.toString());
}else{
System.out.println("http response code :"+resultCode);
}
}
}