请问socket请求,怎么模拟?service返回的消息怎么获取

问题描述

请问socket请求,怎么模拟?service返回的消息怎么获取

请教各位大神:我们现在要模拟socket请求,类似于这样的
5:::{"name":"message","args":[{"topic":"quote","data":{"ver":134,"msgid":0,"flag":0,"uuid":"","data":{"fid":8,"market":"sh","code":"603"}}}]}
现在要通过工具模拟这样的请求,小弟之前没有接触过,请各位大神指教!!

解决方案

用java下的httpclient,C#下的httpwebrequest,VB,js下的xmlhttp,C++/MFC下的inet等都可以。

解决方案二:

额,对于通信协议有是要求么,tcp还是udp,如果只是接受那一串数据,使用发包工具就可以了

解决方案三:

额,对于通信协议有是要求么,tcp还是udp,如果只是接受那一串数据,使用发包工具就可以了

解决方案四:

Java的URL类可以模拟http请求,示例代码如下,body参数就可以放你模拟发送的数据:

 /**
     * 以http方式发送请求,并将请求响应内容以String格式返回
     * @param path    请求路径
     * @param method  请求方法
     * @param body    请求数据
     * @return 返回响应的字符串
     */
    public static String httpRequestToString(String path, String method, String body) {
        String response = null;
        HttpURLConnection conn = null;
        InputStream inputStream = null;
        InputStreamReader inputStreamReader = null;
        BufferedReader bufferedReader = null;
        try {
            URL url = new URL(path);
            conn = (HttpURLConnection) url.openConnection();
            conn.setDoOutput(true);
            conn.setDoInput(true);
            conn.setUseCaches(false);
            conn.setRequestMethod(method);
            if (null != body) {
                OutputStream outputStream = conn.getOutputStream();
                outputStream.write(body.getBytes("UTF-8"));
                outputStream.close();
            }

            inputStream = conn.getInputStream();
            inputStreamReader = new InputStreamReader(
                    inputStream, "UTF-8");
            bufferedReader = new BufferedReader(
                    inputStreamReader);
            String str = null;
            StringBuffer buffer = new StringBuffer();
            while ((str = bufferedReader.readLine()) != null) {
                buffer.append(str);
            }

            response = buffer.toString();
        } catch (Exception e) {
            logger.error(e);
        }finally{
            if(conn!=null){
                conn.disconnect();
            }
            try {
                bufferedReader.close();
                inputStreamReader.close();
                inputStream.close();
            } catch (IOException execption) {
                logger.error(execption);
            }
        }
        return response;
    }
时间: 2024-09-22 10:42:38

请问socket请求,怎么模拟?service返回的消息怎么获取的相关文章

PHP实现模仿socket请求返回页面的方法_php技巧

本文实例讲述了PHP实现模仿socket请求返回页面的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <?php  $url = "www.XXXX.com"; //自己做替换  $parse = parse_url($url); //对URL进行解析,返回起组成部分.  $host = $parse['host'];  $path = $parse['path'];  $port = 80;  $timeout = 80;  $fp = @fsockope

请求-有赞模拟登陆返回500错误

问题描述 有赞模拟登陆返回500错误 1C 我用浏览器打开时正常的,但是在程序中为什么就返回500错误了呢?具体代码如下:地址:http://koudaitong.com/v2/account/user/login /// <summary>/// 获取验证码private void 登陆_Load(object sender EventArgs e){txtUserName.Text=""18076549077"";txtPwd.Text="

wsaewouldblock-vc socket 非阻塞 异步通信 conncect 返回值为WSAEWOULDBLOCK(10035L)

问题描述 vc socket 非阻塞 异步通信 conncect 返回值为WSAEWOULDBLOCK(10035L) vc socket 实现 非阻塞异步通信,在两PC机断开网线的情况下,客户端在connect执行完毕后,返回值不为0,通过WSAGetLastError();总是返回WSAEWOULDBLOCK(10035L)和WSAEALREADY(10037L):在连接网线的情况下,总是先返回WSAEWOULDBLOCK(10035L),然后返回WSAEISCONN(10056L):在连接

windows-c#模拟登陆 返回500错误

问题描述 c#模拟登陆 返回500错误 我想用c#模拟登陆一个网站,然后再对网站进行操作,post参数也很简单,但是为什么返回500错误呢? using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Text; using System.Threading; namespace emulateLoginBaidu { clas

请问socket 我的accept() 为什么出错了?

问题描述 请问socket 我的accept() 为什么出错了? 望大神指点迷津 服务端: #include<stdio.h> #include<stdlib.h> #include<string.h> #include<sys/types.h> #include<sys/socket.h> #include<netinet/in.h> #include<arpa/inet.h> //#include<mysql/m

java中字符串转换为字节数组请问用什么方法,字符串返回字节数组怎么做?

问题描述 java中字符串转换为字节数组请问用什么方法,字符串返回字节数组怎么做? java中字符串转换为字节数组请问用什么方法,字符串返回字节数组怎么做? 解决方案 http://blog.csdn.net/shuaihj/article/details/7478773http://blog.csdn.net/abin_gha/article/details/6317850 解决方案二: java中String类有getBytes方法,可以将字符串转成字节数组.字节数组可以直接写入到输出流中,

JavaScript跨域请求RESTful Web Service

当我们用js请求RESTful Web Service的时候,通常会出现跨域无法访问的问题,也就是无法正常得到我们要的值.jsonp是个解决问题的方法.但是,我们希望访问RESTful Web Service就像一般的ajax方法一样,不用每个都去搞一个jsonp和callback.这就需要我们在服务端进行一些设置,下面我用一个简单的 Filter来进行说明,其他比较复杂的情况根据自己的需求进行改动. import java.io.IOException; import javax.servle

DataView如何绑定Web Service返回的主从表数据集

web|数据 Working With the Data View Web Part Microsoft Office FrontPage 2003 Author: Ben MSN: benjamine65@hotmail.com 如何使用DataView调用XML Web Services如何显示父子从表 l 设计目标: Data View绑定Web Service返回的数据集, 显示父表, 同时以父表当前记录关联字估为条件, 嵌套显示子表 l 数据结构(以下例子以Sql Server 200

mvc3-我想通过mvc路由,把一个请求的图片地址返回别个网站的,能否实现呢

问题描述 我想通过mvc路由,把一个请求的图片地址返回别个网站的,能否实现呢 比如别人请求的 ,我在mvc中做一个路由,想把 http://www.abc.com/upload/123.jpg 在路由上变成 http://img.abc.com/upload/123.jpg routes.MapRoute( "getImg", // 路由名称 "upload/{strPath}.jpg", // 带有参数的 URL new { controller = "