本文整理汇总了C++中WebRequest::process方法的典型用法代码示例。如果您正苦于以下问题:C++ WebRequest::process方法的具体用法?C++ WebRequest::process怎么用?C++ WebRequest::process使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WebRequest
的用法示例。
在下文中一共展示了WebRequest::process方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: on_readable
void WebSocket::on_readable (void)
{
int err;
int index;
WebRequest *request;
if (read_buffer_size - read_buffer_len < BUFFER_SIZE)
{
read_buffer_size += BUFFER_SIZE;
read_buffer = (char *) realloc (read_buffer, read_buffer_size);
}
err = recv (sockfd, &read_buffer[read_buffer_len], read_buffer_size - read_buffer_len, 0);
log (LOG_WEBSOCKET, "WebSocket::on_readable (%d)", err);
if (err < 0)
{
log (LOG_ERROR, "recv (%d : %s)", errno, strerror (errno));
return;
}
if (err == 0)
{
this->set_delete_pending ();
this->set_delete_ready ();
return;
}
read_buffer_len += err; // err is actually the length of data read
for (index = 3; index < read_buffer_len; index ++)
{
if
(
(read_buffer[index - 3] == 0x0D) &&
(read_buffer[index - 2] == 0x0A) &&
(read_buffer[index - 1] == 0x0D) &&
(read_buffer[index - 0] == 0x0A)
)
{
read_buffer[index - 3] = 0;
request = new WebRequest (this, read_buffer);
request->process ();
delete request;
}
}
}