Webクライアントは、LabVIEW Webサービスを使用することによって、ネットワーク上のリモートLabVIEWスタンドアロンアプリケーションとデータを交換することができます。Webサービスは、クライアントからのHTTP要求に応答する、サーバ上で実行されるVIおよびその他のファイルで構成されます。

メモ LabVIEW Webサービスは、LabVIEW開発システムおよびLabVIEWプロフェッショナル開発システムでのみ使用可能です。

Webサービスは以下のような状況で便利です。

  • 標準のWebブラウザなど、任意のHTTP対応WebクライアントでWebサービスVIを呼び出して、URLおよびPOSTなどの標準HTTPメソッドを使用してデータを交換することができます。以下に例を示します。
    • アプリケーションに新しいパラメータをアップロードする
    • 現在の状態またはステータスを取得する
  • カスタムシンクライアントを使用して、リモートで組込式アプリケーションを監視および制御することができます。以下に例を示します。
    • アプリケーションの状態を更新する
    • プロセスを開始または停止する
  • 無数のHTTP対応デバイスとNI製ソフトウェアまたは他社製ソフトウェア間で、アプリケーション同士のデータ交換を行うことができます。以下に例を示します。
    • LabVIEW以外のクライアントに接続する
    • セキュリティと認証を実装する

以下の状況ではWebサービスを使用しないでください。

  • 連続的なデータストリーミング
  • 高速ポーリング
  • リアルタイム処理

LabVIEW Webサービスアプリケーションに関係した共通のプロセスを以下の図に示します。

(1) Webサービスを作成する

Webサービスは、LabVIEWアプリケーションとWebクライアント間の通信を可能にします。以下の手順を実行して、Webサービスを作成します。

  • ホストコンピュータにLabVIEWがインストールされた状態で、LabVIEWプロジェクトからWebサービスを作成および開発します。
  • HTTPメソッドVIやスタートアップVIなど、Webサービスの基本的なコンポーネントを作成します。
  • スタティックコンテンツファイルをWebサービスに統合します。
  • WebサーバでWebサービスをテストおよびデバッグします。

関連情報

Webサービスを作成する

(2) Webサービスをホストする

LabVIEWはNI WebサーバまたはアプリケーションWebサーバを使用して、ネットワーク上でWebサービスをホストします。Webサービスに対するWebサーバのサポートは、Webサービスをパブリッシュまたは実行する方法によって異なります。

メモ NI WebサーバはWindowsオペレーティングシステムのみをサポートします。アプリケーションWebサーバは、WindowsオペレーティングシステムとRTターゲットの両方をサポートします。

Webサーバを使用してWebサービスをホストする前に、Webサーバを有効にして構成する必要があります。また、WebクライアントとLabVIEW Webサービスの間で安全な通信を確立することもできます。

関連情報

Webサービスをホストする

(3) Webサービスをパブリッシュする

プロジェクトから、以下の手順を実行してWebサービスをパブリッシュし、LabVIEW開発システムに依存せずに実行できるようにします。

  • Webサービスをホストコンピュータまたは接続されているRTターゲット上のアプリケーションWebサーバにスタンドアロンWebサービスとしてパブリッシュします。
  • (Windows) NI パッケージを介してWebサービスをNI Webサーバにパブリッシュします。
  • スタンドアロンアプリケーションを介して、WindowsコンピュータまたはRTターゲット上のNI WebサーバまたはアプリケーションWebサーバにWebサービスをパブリッシュします。
  • Windowsインストーラを介して、Windowsコンピュータ上のアプリケーションWebサーバにWebサービスをパブリッシュします。

Webサービスは、ホストサーバへのパブリッシュの方法に応じて、異なった条件下で開始または停止します。

関連情報

Webサービスをパブリッシュする

(4) Webサービスとクライアント間でデータを転送する

ブラウザなどのWebクライアントは、HTTP要求を特定のURLに送信することによってWebサービスとデータを交換します。LabVIEWではURLがそれぞれのHTTPメソッドVIにマッピングされるため、クライアントで使用される特定のURLに応じて、どのHTTPメソッドVIがそのHTTP要求を受け取るかが決定されます。要求には、HTTPメソッドVIの特定のパラメータに割り当てる値が含まれていることがあります。HTTPメソッドVIは、各要求を受け取った後で、これらの値を処理し、応答を返すことができます。Webサービスは、構成された特定の形式 (JSONなど) でWebクライアントにデータを返します。

サポートされるWebクライアントには、標準WebブラウザなどのHTTP対応プラットフォーム、HTMLフォーム、他社製ソフトウェア、HTTPクライアントパレットを使用するVIなどがあります。

標準のプロセス間通信方法を使用して、Windowsまたは組込LabVIEWアプリケーションとWebサービス間の通信を実行できます。たとえば、「ネットワークストリーム」関数を使用して、ローカルでLabVIEWアプリケーションからのデータをWebサービスに転送できます。

簡単な例を挙げると、Webクライアントが、2つの数字を持つHTTP要求を、その数字を計算して合計を返すHTTPメソッドVIに送信することがあります。

関連情報

Webサービスとクライアント間でデータを転送する

(5) Webサービスのユーザインタフェースを作成する

WebブラウザでWebサービスのデータを表示して操作するユーザインタフェースを作成する必要がある場合、G Web Developmentツールを使用してWebユーザインタフェース (Web UI) アプリケーションを開発できます。G Web Developmentツールを使用してWebVIを作成します。これらは、Webアプリケーションを作成する際にHTML、JavaScript、CSSファイルを生成する特別なVIになります。WebVIでは、HTTPを使用してWebサービスと通信し、データをHTML Webページに表示できます。
メモ G Web DevelopmentツールでWeb UIを簡単に作成できますが、HTTP通信をサポートする他の言語を使用してクライアントユーザインタフェースを作成することもできます。