2009-12-07 74 views

回答

0

libcurl可以帮助你做到这一点。参见“没有巧克力片的饼干”here

0

假设您的C++代码作为CGI处理程序运行,它仅仅是在请求和响应中读写Cookie的问题。

如果您的会话数据很小(少于32个字节左右),那么您可以将其全部存储在cookie中。

如果您需要存储更多数据,或者想要共享服务器之间的会话,那么您需要创建唯一的随机ID来表示会话。然后您应该获取该ID并查找实际会话数据(在内存或数据库中)。我已经写

一切都是1990年的CGI 101

我在C++土地猜测,它应该是这样的:

int main() { 

    map<string,string> headers = parseRequestHeaders(cin); 

    int64_t sessionId = 0; 
    SessionData *session = 0; 

    if (getSessionId(headers, &sessionId)) { 
     session = getSession(sessionId); 
    } 
    else { 
     session = newSession(); 
     sessionId = session->id(); 
     setCookie(sessionId); 
    } 

    // ... 
}