最近のアクセス:
REST データプロバイダーを利用する方法

ここでは、GeneXus で REST Web サービスとして公開されているデータプロバイダー (DP) を呼び出す方法について説明します。
最初に、基本的な手引きを示します:

1.GeneXus で REST サービスが呼び出される方法

HttpClient データタイプを使用します。

2.REST データプロバイダーの呼び出しに使用する HTTP メソッド

データプロバイダーの呼び出しに使用する HTTP メソッドは HTTP の GET 動詞です。

3.GET 動詞を実行する URL 形式

<ServerUrl>/<モジュール>/<DP 名>?<パラメーター 1>=<値 1>&<パラメーター 2>=<値 2>,..,<パラメーター N>=<値 N>
入力値の説明:
<パラメーター 1>、<パラメーター 2>、..、<パラメーター N>
      DP のパラメーターです。各パラメーターは & で区切ります。

以下に示す Invoice ビジネスコンポーネントのトランザクションを想定します:
イメージ:30738.png
DP (「DPCaso20」) を作成し、Data Provider の [ Output ] プロパティを Invoice BC に設定しました。また、以下に示すように、これは REST サービスとして公開されています:
イメージ:30739.png
DP には次のルールがあります:
parm(in:&invoicedate,in:&CustomerId, in:&Customername);
その REST DP を呼び出すには次のコードを使用します:
//http://server:8080/BaseUrl/rest/DPCaso20?Invoicedate=2013-11-14&Customerid=1&Customername=Francisco
&httpclient.Host= "server"
&httpclient.Port = 8080
&httpclient.BaseUrl = "BaseUrl"
&httpclient.secure = 0
&httpclient.Execute('GET','DPCaso20?Invoicedate=2013-11-14&Customerid=1&Customername=Francisco')

if &httpclient.StatusCode = 200
    &result = &httpclient.ToString()
else
   msg("Error: " + &httpclient.StatusCode.ToString())
endif

このサンプルは「File:Sample consuming a Rest DP」からダウンロードできます。

注:

  • サービス URI が http://localhost/TestRESTFullGX.NetEnvironment/rest/Invoice の場合、ベース URL は次のようになります: /TestRESTFullGX.NetEnvironment/rest/
  • Java では、パラメーター名は正規化する (最初の文字を大文字にし、その他の文字を小文字にする) 必要があります。この例では次のようになります: Invoicedate、Customerid、Customername 
  • 呼び出し後、エラー処理を管理するために、HTTP ステータスコードのクエリが行われます。

参考情報

GeneXus の REST Web サービス
: GeneXus では、GeneXus で生成されたかどうかにかかわらず、Rest サービスを消費するための OpenAPI インポートツールが提供されています。



サブページ
Created: 17/05/30 19:02 by Admin Last update: 24/03/25 23:57 by Admin
カテゴリ
Powered by GXwiki 3.0