zoukankan      html  css  js  c++  java
  • 简易web服务器

    1.设定服务器端口号,获取服务器IP地址。

    2.创建服务器监听socket     socket();

    3. 连接服务器socket和端口号      bind();

    4. 让服务器socket处于监听状态     listen();

    5. 在循环中调用accept(),获取客户端连接的socket。accept()默认阻塞,直到有客户端连接后返回连接套接字。

    6. 创建线程处理该套接字,使用recv()从socket中读取字符。

    7. 解析HTTP请求报文,如

      首先是请求方法,请求URL,HTTP协议版本。

      Host:主机名

      8.将请求路径转换为本地路径,将文件的副本通过send()发送。

      9.响应报文

      起始行:HTTP协议版本,状态码。

      首部:文件类型,文件长度。

      10.发送完毕后使用close()结束通信。

      1.udp服务器

      • 创建一个socket,用函数socket();
      • 设置socket属性,用函数setsockopt();* 可选
      • 绑定IP地址、端口等信息到socket上,用函数bind();
      • 循环接收数据,用函数recvfrom();
      • 关闭网络连接

      2.udp客户端

      • 创建一个socket,用函数socket();
      • 设置socket属性,用函数setsockopt();* 可选
      • 绑定IP地址、端口等信息到socket上,用函数bind();* 可选
      • 设置对方的IP地址和端口等属性;
      • 发送数据,用函数sendto();
      • 关闭网络连接;

      3.tcp服务器

      • 创建一个socket,用函数socket();
      • 设置socket属性,用函数setsockopt(); * 可选
      • 绑定IP地址、端口等信息到socket上,用函数bind();
      • 开启监听,用函数listen();
      • 接收客户端上来的连接,用函数accept();
      • 收发数据,用函数send()和recv(),或者read()和write();
      • 关闭网络连接;
      • 关闭监听;

      4.tcp客户端

      • 创建一个socket,用函数socket();
      • 设置socket属性,用函数setsockopt();* 可选
      • 绑定IP地址、端口等信息到socket上,用函数bind();* 可选
      • 设置要连接的对方的IP地址和端口等属性;
      • 连接服务器,用函数connect();
      • 收发数据,用函数send()和recv(),或者read()和write();
      • 关闭网络连接;
  • 相关阅读:
    修改游标所在的表
    PL/SQL开发中动态SQL的使用方法
    索引学习笔记
    动态SQL和PL/SQL的EXECUTE选项分析
    PL/SQL正确选择游标类型
    oracle字符集
    ext框架下,实现弹出新窗口
    student guide
    plsql与.net异常处理
    ASP.NET 2.0 XML 系列(1): XML介绍
  • 原文地址:https://www.cnblogs.com/wshr007/p/11503034.html
Copyright © 2011-2022 走看看