ストリーム経由で XML メッセージを送信する TCP 接続があります。
メッセージで受け取る最初の<?xml version="1.0" encoding="utf-8"?>
メッセージ。
2 番目は認証要求メッセージで、資格情報をハッシュしてサーバーに送り返すときに使用するシードを提供します - <session seed="VJAWKBJXJO">
。
この時点で、<session user="admin" password_hash="123456789">
自分自身を認証するためにメッセージを送り返す必要があります。
認証が完了すると、目的のデータが の形式で受信されます<Msg>data</Msg>
。
サーバーとの認証が間に合わない場合</session>
、セッションが閉じられたことを示すメッセージを受け取ります。
<session>
問題は、終了タグのないタグを解析しようとすると常にエラーがスローされるため、DOM パーサーを使用できないことです。そのため、Xerces-c SAX パーサーを使用して XML のプログレッシブ解析を実行しようとしています。
各メッセージを受信したら、理想的にMemBufInputSource
は、現在受信したすべての XML を含む に追加parseNext
し、バッファに対して a を実行して、受信した新しい XML を解析したいのですが、それを取得する方法がわかりません正しく動作しています。
この問題を回避するより良い方法はありますか? おそらく、<session></session>
メッセージに特別なケースを使用しているだけでしょうか?
ありがとう