之前写过C/S架构的项目,对B/S架构是第一次接触,对网站方面的技术也是一知半解,突然要写一个这样的项目,有点无从下手的感觉。
    请大家指教几个问题,b/s架构的服务器和客户端通信时如何实现的?是否也有同步、异步的模式?有一个vc写的监控程序需要向服务器发送一些信息,应该通过什么方式或者函数发送?服务器又通过什么方式接受?
    如果哪位有这方面的源码麻烦发一下,感激不尽。。

解决方案 »

  1.   

    用http协议。监控程序发送Request请求。不了解VC,但肯定有相关的类,可以网上搜一搜
      

  2.   

    vc也可以发送http的request请求,主要是服务端是怎么进行接收的,网上看了一下,如果用socket异步通信实现我倒是会写,但是很多人说asp.net下可以最好用http通信,那样的话接收端应该怎么实现呢?是通过后台起线程进行监控?还是有对应的回调函数?
      

  3.   

     请大家指教几个问题,b/s架构的服务器和客户端通信时如何实现的?
    http是否也有同步、异步的模式
    ajax就是异步 ,当然要是实现异步,也不一定非要用AJAX
      如果哪位有这方面的源码麻烦发一下,感激不尽。。很多的源码网站都是有很多的BS程序的,楼主请自行下载学习
      

  4.   

    看看下面文章的链接可以了解一些这方面的知识,里面有源码,可以参考一下。C# Socket与实现 
      

  5.   

    基于http技术通讯 使用asp.net ajax
    看看WCF,silverlight 
      

  6.   

    51aspx; 去学习吧!! WCF,silverlight  
      

  7.   

    监控程序需要向服务器发送一些信息,应该通过什么方式或者函数发送?服务器又通过什么方式接受?
    >>ajax.
      

  8.   

    简单的用web services
    复杂的用socket
      

  9.   

    .Net技术群108412141
    共同学习.Net技术,分享.Net学习资料,分享.Net工作机会
      

  10.   

    我在怀疑你对BS模式和CS模式是否理解清楚。
    你用VC监控程序那么客户每换环境访问你的服务器都需要安装你的VC程序?
    不知道我说的是否有理
      

  11.   

    楼主显然是做CS的做多了
    BS的只是通过HTTP协议请求显示对应的页面
    然后客户端get/post数据到服务端
    服务端处理请求返回结果就这么简单。当然 架构上的事情还是有很多的,上面只是处理流程。
    如果是访问量大的网站,要求高并发,高I/O的 那就要专业人士了。
      

  12.   

    C/S 和 B/S 要说到通信的话,其实很不一样B/S的B是浏览器,其实本质上就是一个C/S的特例,S服务器可以是IIS程序,C客户端是浏览器,传输协议是HTTP。 这个在C/S里都是要自己定义的,但B/S就这样规定了,所以在B/S里可以更容易的开发东西而不必关注传输方面的问题了,但这样功能肯定没有C/S的强,HTTP协议就是一个无状态的协议,浏览器一个请求,服务器一个回应,仅此而已,所谓ajax异步的概念和C/S的异步完全不同,ajax只不过是改善浏览器的请求方式,在后台请求而已。如果想发送数据,在B/S里本身就是已经完整定义了,只是使用上不方便而已,需要通过各自方式改善。
    最简单的方式
    在服务器上建立一个IIS站点,有个页面a.aspx,大致内容就是
    value=Request.QueryString("Value")
    在浏览器上访问这个网页 http://ip/a.aspx?Value=111
    这样服务器就可以得到value的值111了,然后要怎么处理,存数据库也许,干什么都想
      

  13.   

    要源码的话,上http://www.51aspx.com上面搜一下吧,里面都是源码
      

  14.   

    谢谢各位,结合大家说的,我又搜了下资料,大概确定在vc下可以通过CHttpConnection 给server端post数据,然后server端通过request接收,还有一个小问题是request函数应该写在哪里啊?c/s中通常可以通过遍寻(启动监控线程)和调用异步函数来实现数据的接收。web模式下呢?也要启监控线程?还是写在某个函数就可以?
      

  15.   

    先学HTML,再学开发语言.适当的了解下CSS.
    我认为B/S比C/S简单的多.
      

  16.   


    真是不明白你到底要实现的是怎么一个架构了,你是要用vc做一个自己的浏览器?B/S架构基本不涉及VC的,虽然以前有CGI,不过现在都用别的语言实现,也不需要你实现什么监控线程,那是IIS的工作,这些软件都已经写好了,你用就是了。事实上,B/S模式就是包装了的C/S模式,把网络传输一揽子事情都包装了,你只要实现自己的业务就行了,先扔掉原来通信的所有知识吧
      

  17.   


    是一个管理系统,我是做c的,本来我只负责监控端的部分,做一个监控程序,监控客户端的各种数据并且直接post给服务器就可以了,但是因为人手紧,服务端现在也要我来做。。我又完全没接触过web方面的东西,才弄的这么乱
      

  18.   

    还是看不懂你的需求,监控端?你到底是要在网页上实现什么呀?web不是这样做的,其实C/S才有客户端/服务器端,web模式是B/S,是浏览器端/服务器端。浏览器其实就是服务器的延伸而已,只是输入和输出,所有的代码都是可以理解为服务器端的,因为服务器和客户端的链接都已经封装好了,不需要你监控
      

  19.   

    我的理解,你是不是有个采集程序,不断有数据来,然后你想把数据递交到服务器,然后你又不想自己写传输协议,想利用http协议来传输?如果是这样的话,你首先要明白是你自己实现服务器和客户端还是利用现成的东西?
    windows服务器下有IIS,可以用asp,.net或者其他第三方的开发平台接受数据,最好的方法么还是webservice和wcf,因为这两个就是专门干这个的。
    客户端就是浏览器,如果你想嵌到你自己的软件里,那你要直接实现传输协议了,否则就用现成的控件或组件,就是CHttpConnection ,但这个东西我没接触过,我想一般人也都没有接触过的了,我们一般用webbrowser控件
      

  20.   

    然后server端通过request接收,还有一个小问题是request函数应该写在哪里啊?
    ====================
    其实b/s就是一做网页的,不过是做动态网页而已,做动态网页有很多平台,JSP,Asp.Net,ASP,PHP等等,不同平台就有不同接受方式,不过基本上就是你说的这样写,语法略有不同,关键是别想着C了,因为服务器端基本没C什么事。
    就是比如你递交的数据是 http://1.1.1.1/a.asp?value=123
    那么你的这个 Request.Querystring("value") 就能返回123
      

  21.   

    谢谢了,这么热心的帮我分析,跟你说的差不多,监控端实现的功能大概就是数据采集,收集客户机的一些信息变动传送到服务器,服务器端是要采用iis的,这是项目规定死的况且我也没能力自己写web服务器,发送端就是要用httpconnection,因为监控端是用vc写的,而vc里没有用来传输的控件。。不过这个没问题,只是传输的话我写过,简单来说就是用vc写一个监控程序,安装在所有客户端计算机中,然后按照一定要求监控端把收集到得信息发送给服务器,我的难点就是这个服务器不会搭=.=,不过经过大家这么多提示,还有搜到得一些东西,已经有点眉目了,谢谢各位
      

  22.   

    如果是这样的话,然后你也有c/s的基础,其实你客户端vc也可以不用什么CHttpConnection,webbrowse,直接用WinSock就给服务器地址和端口80发送字符串就可以了,http的协议很简单的,比如GET /path/FileName/ ? name=John HTTP/1.1这样。然后你服务器安装iis,看你用什么开发都可以,asp是最简单了,建个asp文件,request.querystring("name")就能得到John