Я использую wslay в качестве библиотеки веб-сокетов для TCP-соединения с бэкэндом. Я заметил, что заголовок и полезные данные отправляются отдельно. В чем причина этого? Можно ли объединить заголовок и полезную нагрузку?
У меня возникли проблемы с подключением к бэкэнду. Я предполагаю, что проблемы возникают, когда я получаю сообщение после того, как заголовок отправлен, но перед отправкой полезной нагрузки и прерывание прерывает весь процесс отправки.
Строки в wslay_frame.c, на которые я ссылаюсь113 и следующие:
if(ctx->ostate == SEND_HEADER) {
...
r = ctx->callbacks.send_callback(ctx->oheadermark, len, flags, ctx->user_data);
...
ctx->ostate = SEND_PAYLOAD;
}
...
if(ctx->ostate == SEND_PAYLOAD) {
...
r = ctx->callbacks.send_callback(temp, writelen, 0, ctx->user_data);
...