Junos XML プロトコル サーバーの応答を解析する
Junos OSを実行しているデバイスとのJunos XMLプロトコルセッションでは、クライアントアプリケーションがRPCをJunos XMLプロトコルサーバーに送信し、デバイスの設定から情報を要求および管理します。Junos XML プロトコル サーバーは、各クライアント要求に対する応答を、開始 <rpc-reply>
タグと終了タグの別々のペアで囲 </rpc-reply>
みます。各応答は、整形式の XML ドキュメントを構成します。
<rpc-reply xmlns:junos=""http://xml.juniper.net/junos/release/junos""> <!-- tag elements representing a response --> </rpc-reply>
開始<rpc-reply>
タグの属性はxmlns:junos
、プレフィックスで修飾された、同封の Junos XML タグ要素のデフォルト名前空間をjunos:
定義します。URI の変数はrelease、Junos XML プロトコル サーバー デバイス(20.4R1 など)で実行されている Junos OS リリースを表します。
タグ要素は <rpc-reply>
、要素内 <junoscript>
でのみ発生します。クライアント アプリケーションでは、Junos XML プロトコル サーバーから取得する応答タグ要素のストリームを解析するコードを含める必要があります。応答が到着した時点で処理するか、応答が完了するまで格納します。Junos XML プロトコル サーバーは、3 つの応答クラスを返します。
運用上の対応
運用上の回答 とは、スイッチング、ルーティング、またはセキュリティ プラットフォームのステータスに関する情報を求めるリクエストに対する応答です。これらは、CLI 操作コマンドからの出力に対応します。
Junos XML APIは、定義されたすべての運用リクエストタグ要素に対する応答タグ要素を定義します。たとえば、Junos XML プロトコル サーバーは 、 と呼ばれる応答タグ内の タグによって<get-interface-information>
要求された情報を返し、 と呼ばれる<chassis-inventory>
<interface-information>
応答タグ内の タグから<get-chassis-inventory>
要求された情報を<chassis-inventory>
返します。また、操作応答は、要素内output
で囲まれたフォーマットされたASCIIで、またはJSON形式で返すことができます。運用応答のフォーマット設定の詳細については、 Junos XMLプロトコルセッションにおける運用情報リクエストの出力形式の指定を参照してください。
以下のサンプル応答には、インターフェイス ge-2/3/0 に関する情報が含まれています。開始<interface-information>
タグの属性でxmlns
示された名前空間には、Junos OSリリース20.4のインターフェイス情報が含まれています。
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/20.4R1/junos"> <interface-information xmlns="http://xml.juniper.net/junos/20.4R1/junos-interface"> <physical-interface> <name>ge-2/3/0</name> <!-- other data tag elements for the ge-2/3/0 interface --> </physical-interface> </interface-information> </rpc-reply>
運用応答タグ要素の xmlns
属性と内容の詳細については、 Junos XMLプロトコルを使用した運用情報の要求を参照してください。運用応答タグ要素の概要については、 Junos XML API 運用開発者リファレンスを参照してください。
構成情報の応答
設定情報応答 は、デバイスの現在の設定に関する情報に関するリクエストへの応答です。Junos XML APIは、設定階層のすべてのコンテナおよびリーフステートメントのタグ要素を定義します。サーバーに対して、Junos XML 要素、フォーマット済み ASCII、Junos OS set
コマンド、JSON など、さまざまな形式の設定データを返すように指示できます。形式を指定しない場合、デフォルトは XML になります。設定情報応答のフォーマットの詳細については、 Junos XMLプロトコルセッションにおける設定データの出力形式の指定を参照してください。
以下のサンプル応答には、設定階層の [edit system login]
階層レベルの情報が含まれています。簡潔にするために、このサンプルは、このレベルで定義された 1 つのユーザーのみを示しています。
<rpc-reply xmlns:junos="URL"> <configuration> <system> <login> <user> <name>admin</name> <full-name>Administrator</full-name> <!-- other data tag elements for the admin user --> </user> </login> </system> </configuration> </rpc-reply>
構成変更応答
設定変更応答とは、 デバイス設定の状態またはコンテンツを変更するリクエストに対する応答のことです。コミット操作の場合、Junos XMLプロトコルサーバーは応答タグを <commit-results>
返し、成功または失敗の明示的な指標を囲みます。
<rpc-reply xmlns:junos="URL"> <commit-results> <!-- tag elements for information about the commit --> </commit-results> </rpc-reply>
その他の操作では、Junos XML プロトコル サーバーは明示的な成功インジケーターを出力する代わりに、開始タグを <rpc-reply>
返し、子要素を持たない閉じる </rpc-reply>
タグを返すことで成功を示します。
<rpc-reply xmlns:junos="URL"> </rpc-reply>
詳細については、 Junos XML プロトコルを使用した設定変更の要求および Junos XML プロトコルを使用した受験者設定のコミットを参照してください。使用可能な構成要素の概要については、 Junos XML API 構成開発者リファレンスを参照してください。