post实现get post传参
post传参和获取参数:
- /**
- * 获取post参数
- * @param is
- * @param charset
- * @return
- */
- public static String getContent(InputStream is, String charset) {
- String pageString = null;
- InputStreamReader isr = null;
- BufferedReader br = null;
- StringBuffer sb = null;
- try {
- isr = new InputStreamReader(is, charset);
- br = new BufferedReader(isr);
- sb = new StringBuffer();
- String line = null;
- while ((line = br.readLine()) != null) {
- sb.append(line + "\n");
- }
- pageString = sb.toString();
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- try {
- if (is != null){
- is.close();
- }
- if(isr!=null){
- isr.close();
- }
- if(br!=null){
- br.close();
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- sb = null;
- }
- return pageString;
- }
- /**
- * @param url post传参
- * @param xml
- * @param method
- * @param contentType
- * @return
- */
- public static String xmlHttpProxy(String url,String xml,String method,String contentType){
- InputStream is = null;
- OutputStream os = null;
- /**接口调用成功标识*/
- boolean is_success = true;
- try {
- if(ValidateUtils.isEmpty(method)){
- method = "GET";
- }
- if(ValidateUtils.isEmpty(contentType)){
- contentType = "UTF-8";
- }
- URL _url = new URL(url);
- HttpURLConnection conn = (HttpURLConnection) _url.openConnection();
- conn.setDoInput(true);
- conn.setDoOutput(true);
- conn.setRequestProperty("Content-type", contentType);
- conn.setRequestMethod(method);
- //conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
- //接收参数
- if(!ValidateUtils.isEmpty(xml)){
- os = conn.getOutputStream();
- os.write(xml.getBytes());
- os.flush();
- }
- //返回值
- is = conn.getInputStream();
- return getContent(is, "utf-8");
- } catch (MalformedURLException e) {
- is_success = false;
- e.printStackTrace();
- } catch (IOException e) {
- is_success = false;
- e.printStackTrace();
- } finally{
- try {
- if(os!=null){os.close();}
- if(is!=null){is.close();}
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- return null;
- }
补充:
①post端:
- /**
- * 是否同步成功
- * 如果能够ping通就表示同步成功,其他逻辑(比如是否真的成功了)在天翼客服完善
- * syncType:1 insert;2 update;3 delete
- * @return
- */
- public boolean syncIsOk(String dataJson,int syncType){
- InputStreamReader in = null;
- BufferedReader reader = null;
- try{
- if(!ValidateUtils.isEmpty(dataJson)){
- String tianyikefu_ip = "http://172.172.3.134:8080";
- //拼上地址
- tianyikefu_ip = tianyikefu_ip + "/manyou/sync_roaming_data.jspx";
- System.out.println(tianyikefu_ip);
- String url = tianyikefu_ip;
- StringBuffer param_xml = new StringBuffer(200);
- param_xml.append("{\"dataJson\":"+dataJson+",\"syncType\":"+syncType+"}");
- //System.out.println(param_xml);
- String xml = HttpRequestUtils.xmlHttpProxy(url, param_xml.toString(), "POST","application/xml");
- //System.out.println("返回:" + xml);
- /**
- * {
- "resCode": 200,
- "resDesc": "处理成功!"
- }
- */
- JSONObject jsonObject = JSONObject.fromObject(xml);
- if(jsonObject!=null&&"200".equals(jsonObject.get("resCode").toString())){
- return true;
- }
- }
- }catch (Exception e) {
- e.printStackTrace();
- }finally{
- try{
- if(reader!=null){
- reader.close();
- }
- if(in!=null){
- in.close();
- }
- }catch (Exception e) {
- e.printStackTrace();
- }
- }
- return false;
- }
②获取端:
- StringBuffer info=new StringBuffer();
- in = request.getInputStream();
- buf = new BufferedInputStream(in);
- byte[] buffer=new byte[1024];
- int iRead;
- while((iRead=buf.read(buffer))!=-1){
- info.append(new String(buffer,0,iRead,"gbk"));
- }
- if(info!=null&&!ValidateUtils.isEmpty(info.toString())){
- JSONObject paramJson = JSONObject.fromObject(info.toString());
- /*
- * {"dataJson":"","syncType":2}
- */
- if(paramJson!=null){
- dataJson = paramJson.getString("dataJson");
- syncType = paramJson.getString("syncType");
- }
- }

浙公网安备 33010602011771号