瑶瑶科技 请求样例. (保留一周)

瑶瑶科技 请求样例. (保留一周)

package test;

import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Date;

public class test1 {

    public static void main(String[] args) throws Exception{
        String xml="<?xml version=\"1.0\" encoding=\"UTF-8\"?>"+
                    "<PACKET type=\"REQUEST\" version=\"1.0\">"+
                        "<HEAD>"+
                            "<REQUEST_TYPE>0300-05</REQUEST_TYPE>"+
                            "<SYSNAME>电销</SYSNAME>"+
                            "<SYSCODE>01</SYSCODE>"+
                            "<USERCDE>100009999</USERCDE>"+
                            "<DPTCDE>33</DPTCDE>"+
                            "<TYPE>I</TYPE>"+
                            "<DATA>A</DATA>"+
                            "<SERVICE_NO></SERVICE_NO>"+
                            "<SERVICENAME></SERVICENAME>"+
                            "<USERID></USERID>"+
                        "</HEAD>"+
                        "<BODY>"+
                          "<VHL>"+
                            "<VEHICLE_ID></VEHICLE_ID>"+
                            "<VEHICLE_NAME>宝马 740</VEHICLE_NAME>"+
                            "<VIN></VIN>"+
                          "</VHL>"+
                        "</BODY>"+
                    "</PACKET>";
            //把XML的数据转成字符串
            System.out.println(xml);
            String returnData=sendRequestData(xml, "http://esbtest.zsins.com:8866/0203000003/VhlModelSearch/V1","UTF-8","UTF-8", 3000,3000);

    }        

    public static String sendRequestData(String requestData, String urlStr,String sendEncoding,String recvEncoding, int connectionTimeout,int readTimeout) throws IOException{
        URL url = null;
        HttpURLConnection conn = null;
        ByteArrayOutputStream byteOut = null;
        BufferedReader readInfo = null;
        StringBuffer strBuilder=new StringBuffer();
        OutputStream out = null;
        try {
            System.out.println("请求时间:【"+new Date()+"】");
            System.out.println("请求地址:【"+urlStr+"】");
            System.out.println("请求报文:【"+requestData+"】");
            url = new URL(urlStr);
            conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("POST");
            conn.setRequestProperty("SOAPAction", "\"\"");
            conn.setRequestProperty("Accept", "application/soap+xml, application/dime, multipart/related, text/*");
            conn.setRequestProperty("Cache-Control", "no-cache");
            conn.setUseCaches(false); //忽略缓存
            conn.setDoOutput(true); //使用 URL 连接进行输出
            conn.setDoInput(true); //使用 URL 连接进行输入
            conn.setConnectTimeout(connectionTimeout);//链接超时
            conn.setReadTimeout(readTimeout);//读取超时
            conn.connect();//建立链接
            byteOut = new ByteArrayOutputStream();
            byteOut.write(requestData.getBytes(sendEncoding));//以指定编码发送,如果有乱码,修改之
            byte[] buf = byteOut.toByteArray();
            out = conn.getOutputStream();
            out.write(buf);
            out.flush();
            if (HttpURLConnection.HTTP_OK == conn.getResponseCode()) {//正确返回
                readInfo = new BufferedReader(new java.io.InputStreamReader(conn.getInputStream(),recvEncoding));//以指定编码读取返回信息,如果有乱码,修改之
                String line = null;
                while ((line = readInfo.readLine()) != null) {
                    strBuilder.append(line);
                }
            } else {//没有正确返回
                readInfo = new BufferedReader(new java.io.InputStreamReader(conn.getInputStream(),recvEncoding));//以指定编码读取返回信息,如果有乱码,修改之
                System.out.println("出现异常,返回报文:【"+readInfo+"】");
                throw new IOException("url请求出现问题,返回编码:" + conn.getResponseCode());
            }
            System.out.println("返回时间:【"+new Date()+"】");
            System.out.println("返回报文:【"+strBuilder.toString()+"】");
        } catch (UnsupportedEncodingException e) {
            throw e;
        } catch (MalformedURLException e) {
            throw e;
        } catch (IOException e) {
            throw e;
        }finally {
            try{
                if (readInfo != null) {
                    readInfo.close();
                }
                if (byteOut != null) {
                    byteOut.close();
                }
                if (out != null) {
                    out.close();
                }
                if (conn != null) {
                    conn.disconnect();
                }
            }catch(Exception e){
                System.out.println("关闭链接出错!"+e.getMessage());
            }

        }
        return strBuilder.toString();
    }
}
时间: 2024-10-13 21:52:22

瑶瑶科技 请求样例. (保留一周)的相关文章

Node.js使用superagent模拟GET/POST请求样例

示例代码: var superagent = require('superagent'); superagent.get("http://localhost:8091/user/all?reqUsername=admin&reqPasswd=654321") .end( (err, res)=> { if (err) { console.log("出错:" + err); } else { console.log(res.text); } } ); /

php curl模拟post请求提交数据样例总结

在php中要模拟post请求数据提交我们会使用到curl函数,以下我来给大家举几个curl模拟post请求提交数据样例有须要的朋友可參考參考.注意:curl函数在php中默认是不被支持的,假设须要使用curl函数我们需在改一改 在php中要模拟post请求数据提交我们会使用到curl函数,以下我来给大家举几个curl模拟post请求提交数据样例有须要的朋友可參考參考. 注意:curl函数在php中默认是不被支持的,假设须要使用curl函数我们需在改一改你的php.ini文件的设置,找到php_c

Cocos2d-x 3.2 Lua演示样例 XMLHttpRequestTest(Http网络请求)

Cocos2d-x 3.2 Lua演示样例 XMLHttpRequestTest(Http网络请求) 本篇博客介绍Cocos2d-x 3.2Lua演示样例中的XMLHttpRequestTest,这里提供GET和POST两种http请求方式,返回数据类型有下面几种: cc.XMLHTTPREQUEST_RESPONSE_STRING = 0  -- 返回字符串类型cc.XMLHTTPREQUEST_RESPONSE_ARRAY_BUFFER = 1 -- 返回字节数组类型cc.XMLHTTPRE

20145216史婧瑶《信息安全系统设计基础》第7周学习总结

20145216史婧瑶<信息安全系统设计基础>第七周学习总结 教材内容总结 第六章 存储器层次结构 存储器系统是一个具有不同容量.成本和访问时间的存储设备的层次结构. CPU寄存器.高速缓存存储器.主存储器.磁盘. 第一节 存储技术 一.随机访问存储器(RAM) 1.RAM分类: 静态的SRAM-更快,更贵,作为高速缓存存储器,CPU片上或片下 动态的DARM-作为主存以及图形系统的帧缓冲区 2.非易失性存储器--ROM (1)分类 PROM-可编程ROM,只能被编程一次 EPROM-可擦写可

C编程规范, 演示样例代码。

/*************************************************************** *Copyright (c) 2014,TianYuan *All rights reserved. * *文件名: standard.h *文件标识: 编程规范演示样例代码 * *当前版本号:V1.0 *作者:wuyq *完毕日期:20140709 * *改动记录1: //改动历史记录.包含改动日期.版本号号.改动人及改动内容等 *改动日期 版本号号 改动人 改动内

redis cmd 使用样例

Redis 命令參考 一 Redis介绍 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工作由VMware主持. Redis能执行在大多数POSIX(Linux, *BSD, OS X 和Solaris等)系统上.官方没有支持Windows的版本号.眼下最新的版本号是2.2.11,这个版本号主要是修复了一个2.2.7版本号中遍历方式优化带来的一个bug. 和普通的

OCAC暑期比赛第二场 C题 瑶瑶2356 题解

瑶瑶2356原题链接:http://codeforces.com/problemset/problem/734/B[题目描述]最近瑶瑶在房间里面发现了一个神秘的盒子.她打开盒子,发现里面存放了若干张卡片,每张卡片上面都有一个数字.瑶瑶输了一下,卡片上面的数字只有4种数值:2,3,5,6.并且,她统计了一下,一共有k2张数值为2的卡片,有k3张数值为3的卡片,有k5张数值为5的卡片,有k6张数值为6的卡片.瑶瑶最喜欢的数字是 32 和 256.所以它发现可以用这些卡片拼成数字 32 或者 256.

JS - CommonJS、ES2015、AMD、CMD模块规范对比与介绍(附样例)

一.CommonJS 1,CommonJS 基本介绍 (1)CommonJS 是一种思想,它是为 JS 的表现来制定规范.由于 JS 没有模块系统.标准库较少.缺乏包管理工具,因此 CommonJS 应运而生. (2)CommonJS 的目标是希望 JS 可以在任何地方运行,不只是浏览器中.只要我们的 JavaScript 是根据 CommonJS API 编写的,那么就可以在与 CommonJS 兼容的系统上运行. (3)根据 CommonJS API 编写的 JavaScript 可以做下面

Python Socket 编程——聊天室演示样例程序

上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和client的代码了解主要的 Python Socket 编程模型.本文再通过一个样例来加强一下对 Socket 编程的理解. 聊天室程序需求 我们要实现的是简单的聊天室的样例,就是同意多个人同一时候一起聊天.每一个人发送的消息全部人都能接收到,类似于 QQ 群的功能,而不是点对点的 QQ 好友之间的聊天.例如以下图: 图来自:http://www.ibm.com/developerworks/linux/tu