lbb
2025-06-29 f13172a43666302b8e856d5e1da1f2c57e59b034
日报提交
2 文件已复制
1 文件已重命名
1个文件已修改
1个文件已删除
104 ■■■■■ 已修改文件
Server/common_type.h 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Server/梁博/log/~$_梁博_0624.doc 补丁 | 查看 | 原始文档 | blame | 历史
Server/梁博/log/日志_梁博_0626.doc 补丁 | 查看 | 原始文档 | blame | 历史
Server/梁博/log/日志_梁博_0627.doc 补丁 | 查看 | 原始文档 | blame | 历史
Server/梁博/log/日志_梁博_0628.doc 补丁 | 查看 | 原始文档 | blame | 历史
Server/common_type.h
@@ -1,31 +1,44 @@
#ifndef TCPDATATYPE_H
#define TCPDATATYPE_H
/*        */
/*
 * å®¢æˆ·ç«¯ä¸ŽæœåŠ¡å™¨äº¤äº’çš„åŠ¨ä½œç±»åž‹æžšä¸¾
 * æ³¨æ„ï¼šä½¿ç”¨ enum class é¿å…å‘½åå†²çªï¼ˆC++11特性)
 */
enum class ActionType
{
    HeartCheck = 100,
    Login = 110,
    Register = 120,
    Msg = 200,
    Download = 300
    HeartCheck = 100,  // å¿ƒè·³æ£€æµ‹ï¼ˆä¿æŒè¿žæŽ¥æ´»æ€§ï¼‰
    Login = 110,       // ç™»å½•请求
    Register = 120,    // æ³¨å†Œè¯·æ±‚
    Msg = 200,        // æ™®é€šæ¶ˆæ¯ä¼ è¾“
    Download = 300     // æ–‡ä»¶ä¸‹è½½è¯·æ±‚
};
/* Î¿ HTTP    Ó¦  */
/*
 * HTTP风格响应状态码(简化版)
 * ç”¨äºŽæœåŠ¡å™¨å‘å®¢æˆ·ç«¯è¿”å›žæ“ä½œç»“æžœçŠ¶æ€
 */
enum class ResponseCode
{
    ResponseOK = 200,      //     É¹
    BadRequest = 400,      //  Í»             ó£¬·      Þ·
    Unauthorized = 401,    //     Òª   Ã»        Ö¤
    Forbidden = 403,       //              Í»  Ëµ    ó£¬µ  Ç¾Ü¾ Ö´ Ð´
    NotFound = 404,        //        Þ·  Òµ        Ô´
    MethodNotAllowed = 405 //  Í»        ÐµÄ·       Ö¹
    ResponseOK = 200,      // æˆåŠŸï¼ˆOK)
    BadRequest = 400,      // é”™è¯¯è¯·æ±‚(客户端请求语法错误)
    Unauthorized = 401,    // æœªæŽˆæƒï¼ˆéœ€è¦èº«ä»½éªŒè¯ï¼‰
    Forbidden = 403,       // ç¦æ­¢è®¿é—®ï¼ˆæƒé™ä¸è¶³ï¼‰
    NotFound = 404,        // æœªæ‰¾åˆ°ï¼ˆè¯·æ±‚资源不存在)
    MethodNotAllowed = 405 // æ–¹æ³•不允许(如用GET请求POST接口)
};
/*  Ï¢  */
/*
 * é€šç”¨æ¶ˆæ¯å¤´ç»“构(所有数据包必须包含)
 * ä½œç”¨ï¼šæ ‡è¯†æ¶ˆæ¯ç±»åž‹å’ŒåŸºæœ¬ä¿¡æ¯
 */
struct Head
{
    ActionType type;
    int len;
    int version;
    ActionType type;    // æ¶ˆæ¯ç±»åž‹ï¼ˆå¯¹åº”ActionType枚举)
    int len;           // æ•´ä¸ªæ•°æ®åŒ…的长度(字节数)
    int version;       // åè®®ç‰ˆæœ¬å·ï¼ˆç”¨äºŽå…¼å®¹æ€§æŽ§åˆ¶ï¼‰
    // æž„造函数(初始化时必须提供三个参数)
    Head(ActionType ptype, int plen, int pversion)
    {
        len = plen;
@@ -33,40 +46,61 @@
        version = pversion;
    }
};
struct HeartCheckReq //
/*
 * å¿ƒè·³æ£€æµ‹è¯·æ±‚结构
 * ç‰¹ç‚¹ï¼šå›ºå®šç±»åž‹å’Œé•¿åº¦ï¼ˆä¸éœ€è¦é¢å¤–数据)
 */
struct HeartCheckReq
{
    ActionType type;
    int len;
    ActionType type;  // å›ºå®šä¸ºActionType::HeartCheck
    int len;         // ç»“构体自身大小
    HeartCheckReq()
    {
        type = ActionType::HeartCheck;
        len = sizeof(HeartCheckReq);
        len = sizeof(HeartCheckReq);  // è‡ªåŠ¨è®¡ç®—ç»“æž„ä½“å¤§å°
    }
};
struct HeartCheckRes //       Ó¦
/*
 * å¿ƒè·³æ£€æµ‹å“åº”结构
 * æ³¨æ„ï¼šä¸Žè¯·æ±‚结构相同(实际可能包含服务器状态信息)
 */
struct HeartCheckRes
{
    ActionType type;
    int len;
    ActionType type;  // å›ºå®šä¸ºActionType::HeartCheck
    int len;         // ç»“构体自身大小
    HeartCheckRes()
    {
        type = ActionType::HeartCheck;
        len = sizeof(HeartCheckRes);
    }
};
/*
 * ç”¨æˆ·æ³¨å†Œè¯·æ±‚结构
 * ç»„成:消息头 + ç”¨æˆ·ä¿¡æ¯å­—段
 */
struct RegisterRequest
{
    Head head;
    char name[64];
    char password[64];
    char email[32];
    char phone[32];
    Head head;        // å¿…须包含的消息头
    char name[64];    // ç”¨æˆ·åï¼ˆå›ºå®šé•¿åº¦64字节)
    char password[64];// å¯†ç ï¼ˆå»ºè®®åŠ å¯†å­˜å‚¨ï¼‰
    char email[32];   // é‚®ç®±ï¼ˆç”¨äºŽæ‰¾å›žå¯†ç ï¼‰
    char phone[32];   // æ‰‹æœºå·ï¼ˆå¯é€‰éªŒè¯ï¼‰
};
/*
 * ç”¨æˆ·ç™»å½•请求结构
 * æ³¨æ„ï¼šæ¯”注册请求少邮箱和手机字段
 */
struct LoginRequest
{
    Head head;
    char name[64];
    char password[64];
    Head head;        // æ¶ˆæ¯å¤´ï¼ˆtype应为ActionType::Login)
    char name[64];    // ç”¨æˆ·å
    char password[64];// å¯†ç ï¼ˆå»ºè®®åŠ å¯†ä¼ è¾“ï¼‰
};
#endif
#endif // TCPDATATYPE_H
Server/Áº²©/log/~$_Áº²©_0624.doc
Binary files differ
Server/Áº²©/log/ÈÕÖ¾_Áº²©_0626.doc
Binary files differ
Server/Áº²©/log/ÈÕÖ¾_Áº²©_0627.doc
copy from "Server/\346\242\201\345\215\232/log/~WRL0005.tmp" copy to "Server/\346\242\201\345\215\232/log/\346\227\245\345\277\227_\346\242\201\345\215\232_0627.doc" Binary files differ
Server/Áº²©/log/ÈÕÖ¾_Áº²©_0628.doc
copy from "Server/\346\242\201\345\215\232/log/~WRL0005.tmp" copy to "Server/\346\242\201\345\215\232/log/\346\227\245\345\277\227_\346\242\201\345\215\232_0628.doc" Binary files differ