如何测试tcp客户端到接收c#中多个参数的web方法

时间:2017-12-03 15:30:58

标签: c# tcpclient webmethod tcplistener

大家好,谁能帮助我。我正在尝试做一个调用服务器的web方法。我想确保数据不会与两个不同的客户端混合,从而对Web方法进行相同的调用。如果有人有一个例子或任何可以帮助我的事情会很棒。如果我不清楚问题请随时问我。

谢谢!

1 个答案:

答案 0 :(得分:0)

假设您必须从客户端调用服务器:
您可以使用Math.random() based generatorslibraries为您的来电插入唯一ID。

或者当您加载页面时,您可以从ASP.NET中引入SessionId(或从Cookie中检索它),并将其添加到您的请求中。

所以看起来像这样:
服务器:

[WebMethod]
public static string Hello(string name, string sessionId)
{
    return "Hello " + name;
}

客户端:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js" type="text/javascript"></script>
<script type ="text/javascript">
    function guid() {
      function s4() {
          return Math.floor((1 + Math.random()) * 0x10000)
           .toString(16)
           .substring(1);
      }
    return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
          s4() + '-' + s4() + s4() + s4();
    }
    $(document).ready(function () {
        $('#somebutton').click(function () {
            var id = 
            $.ajax({
                type: "POST",
                url: "SomeController/Hello",
                data: "{'name':'" + $('#nametxtbox').val() + "', 'sessionId':'" + guid() + "'}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (msg) {
                    alert(msg.d);
                }
            })
            return false;
        });
    });
</script>