如果是cgi,那么可以从stdin中直接去post上来的参数:
len = atoi(getenv("CONTENT_LENGTH"));
if(len < 0 || len >= MAX_CONTENT_LENGTH)
return;
cin >> m_content;
如果是fcgi,那么需要从FCGI_stdin中读取,必须用FCGI_fgetc来操作:
len = atoi(getenv("CONTENT_LENGTH"));
if(len < 0 || len >= MAX_CONTENT_LENGTH)
return;
char InputBuffer[4096] = {0};
int i = 0;
int x;
while( i < len )
{ /*从stdin中得到Form数据*/
x = FCGI_fgetc(stdin);
if( x == EOF )
break;
InputBuffer[i++] = x;
}
InputBuffer[i] = '/0';
len = i;
m_content = InputBuffer;