我从dev / random读取并将二进制数据存储到数组中。
当我将数组写入我的日志时,它会按我的要求显示:
DebugLogMsg10 (pDebugLogger, sizeThreadID, "login failed->%s", UserSession.szToken);
但是当我把它放入我的页面构建函数调用时(第二个参数期望char *
作为指向我想要设置为cookie的字符串的指针。
PutMainLogIn (UsersAuthentication, UserSession.szToken, &requestFcgx);
如果我这样做:
PutMainLogIn (UsersAuthentication, "testtest", &requestFcgx);
它也正常工作,并且设置了值为testtest
的cookie。
那么问题是什么? 是否不允许将二进制数据设置为cookie?还是我想念一些东西?
PS: 这个结构看起来像:
typedef struct Sesseion_s
{
size_t sizeID;
char szToken[TOKEN_LEN];
} Sesseion_t;
这是函数原型:
void PutMainLogIn (UsersAuth_t pUserData, char *szToken, FCGX_Request *Fcgx_Request)