NHTTPライブラリはHTTPプロトコルを実現するためのライブラリです。
まずはじめにNHTTP_Startup関数を呼び、NHTTPライブラリを初期化します。
次に、NHTTP_CreateConnection関数でHTTP接続ハンドルを生成して
各種の接続設定およびリクエスト設定を行います。
必要に応じて、以下の関数群を組み合わせて使用します。
設定の済んだ接続ハンドルは、NHTTP_StartConnection関数を呼び出すことによって
実際に通信処理の開始準備に入ります。ライブラリ内部のスレッドは、通信準備中の接続ハンドルを1個ずつ順番に処理します。キューに上限はありません。
通信中は必要に応じて各種のNHTTPConnectionEventイベントが発生し、
NHTTP_CreateConnection関数で設定したコールバックへ通知されます。
通信処理中はNHTTP_GetConnectionError関数の返り値がNHTTP_ERROR_BUSYとなり、
しばらくたてば通信処理は内部で自動的に終了します。
NHTTP_CancelConnection関数でキャンセルすることも可能です。
通信処理またはそのキャンセル要求が完了するまでその場で待機するにはNHTTP_WaitForConnection関数が使用可能です。
通信が成功した接続ハンドルはHTTPレスポンス情報を保持しています。
必要に応じて、以下の関数群を使用してレスポンスの内容を参照します。
NHTTP_DeleteConnectionで解放します。NHTTP_CleanupAsyncでNHTTPライブラリを解放して終了します。
ラベルと値を追加して、リクエスト開始の際にまとめて送信するNHTTP_AddPostDataAscii,NHTTP_AddPostDataBinaryと、
ラベル無しで単一のデータのみをリクエスト開始の際に送信するNHTTP_AddPostDataRawは併用できません。
先にセットしたほうが有効になります。
TWL では上級者向け接続設定 4・5・6 にPROXYサーバを設定する事ができますが、これをアプリケーションでサポートするかは任意です。NHTTP では自動的にこれらの設定を利用する事はありません。
もしサポートする場合は NHTTP_SetProxyDefault を呼び出して下さい。現在接続に使用している設定の PROXYサーバ が設定されます。(接続先1・2・3の場合は何もしません。)
PROXY認証に失敗した場合エラー値自体はNHTTP_ERROR_NONEのままです。NHTTP_GetResultCodeでHTTPリザルトが200であるかどうかでエラーの判別を行ってください。
NHTTP ライブラリは以下の二種類の SSL をサポートしています。
SSL を使用するためには、使用する SSL の種類に応じてリンクするライブラリを切り替える必要があります。
また、一部の API ではパラメータとして渡す値が違いますのでご注意下さい。
2009/02/12 SSL に関して追記
2008/09/04 TwlWiFi パッケージ用に手直し
2006/12/22 旧仕様の説明を削除。
2006/11/02 接続設定追記。
2006/10/30 記述ミスを修正。
2006/10/19 新仕様の公開に伴う全面改定。
2006/6/26 初版。