NHTTPConnectionCallback, NHTTPConnectionEvent

構文


#include <nitroWiFi/nhttp.h>

typedef int (*NHTTPConnectionCallback)( NHTTPConnectionHandle handle, NHTTPConnectionEvent event, void* arg );

typedef enum {
    NHTTP_EVENT_NONE,
    NHTTP_EVENT_POST_SEND,
    NHTTP_EVENT_BODY_RECV_FULL,
    NHTTP_EVENT_BODY_RECV_DONE,
    NHTTP_EVENT_COMPLETE,
    NHTTP_CALLBACK_EVENT_MAX
} NHTTPConnectionEvent;

typedef struct _NHTTPPostSendArg {
    const char* label;
    char*       buf;
    u32         size;
    u32         offset;
} NHTTPPostSendArg;

typedef struct _NHTTPBodyBufArg {
    char*       buf;
    u32         size;
    u32         offset;
} NHTTPBodyBufArg;

引数

handle イベント通知対象の接続ハンドル
event イベント種別
arg イベント毎に異なるコールバック情報構造体へのポインタ

説明

NHTTP_CreateConnection()で指定する、通信中のイベント通知コールバック関数です。

アプリケーションは、通知された各々のイベント種別にしたがって引数のargを解釈し、 コールバック内で適切な処理を行うことができます。
コールバック関数にNULLを指定して通知を受け取らない場合や、 コールバック関数内で何も処理を行わない場合には、 ライブラリが判断して適切なデフォルト処理を行います。
各イベント種別の意味は以下の通りです。
イベント種別 argの指す構造体 意味 デフォルトの処理
NHTTP_EVENT_POST_SEND NHTTPPostSendArg データが未確定なPOSTデータを送信するタイミングに達したことを通知します。 未確定なPOSTデータを準備できないまま、通信は失敗します。
NHTTP_EVENT_BODY_RECV_FULL NHTTPBodyBufArg 通信中にボディ受信バッファが満了したことを通知します。 ボディ受信バッファが満了したまま、以降の内容は読み捨てられます。
NHTTP_EVENT_BODY_RECV_DONE NHTTPBodyBufArg 通信処理、またはそのキャンセル処理が完了したことを通知します。 このイベントに関してライブラリ側で行う特別な処理は何もありません。
NHTTP_EVENT_COMPLETE NULL 通信処理、またはそのキャンセル処理が完了したことを通知します。
NHTTP_EVENT_NONE
NHTTP_CALLBACK_EVENT_MAX
ライブラリ内部の利便性のために定義されており、このイベントが通知されることはありません。

参照

NHTTP_CreateConnection

履歴

2006/10/30 タイトルを修正。
2006/10/14 初版