Example 2: CICS® VSAM データ・セットからキー付きレコードを読み取る

次の例では、File Manager Service Provider REST API 呼び出しを実行し、テンプレートを使用して CICS® VSAM データ・セットにアクセスし、指定されたキー位置から 1 レコードを読み取ります。

初回要求

データ・リソースからデータを読み取る初回 API 呼び出しには、z/OS® データ・リソースへの以降のアクセスで呼び出し元を認証できるように、HTTP Basic 認証ヘッダーが必要です。例:

Authorization : Basic dXNlcmlkOnBhc3N3b3Jk

ここで、Basic キーワードに続くストリングは、userid:password の Base64 エンコードを示します。

また、JSON ペイロードがあるすべての要求でも、値が application/json の Content-Type ヘッダーが必要です。

初回要求にはまた、データ・リソースの名前と、オプションとして、データをマップする File Manager テンプレートまたはコピーブックの名前も必要です。

{
    "resource" : 
    {
        "resourceName" : "FI:CICSR01:MYKSDS"
    },
    "template" :
    {
        "templateName" : "MY.TEMPLATE(MYKSDS)"
    },
    "operation" :
    {
        "numRecords" : 1,
        "session" : false
    },
    "position" :
    {
        "key" : "X’0007331C’"
    }
}

この要求は、CICSR01 領域、16 進値のキーの位置 X'0007331C' の MYKSDS という CICS® ファイルへのアクセスを試行し、1 レコードを読み取ります。File Manager は false に設定されているため、サービス・プロバイダーは session セッションを維持しないか、トークンを返します。

成功時の応答

成功時の応答 (HTTP ステータス・コード 200) は次のようになります。

{
    "records" : 
    [
        {
            "layouts" : 
            [
                {
                    "layout" : "CUSTOMER-ADDRESS",
                    "fields" : 
                    [
                        {
                            "field" : "CUSTOMER-NO",
                            "type" : "PD",
                            "value" : 7331
                        },
                        {
                            "field" : "CUSTOMER-STREET",
                            "type" : "AN",
                            "value" : "2 MACQUARIE STREET"
                        },
                        {
                            "field" : "CUSTOMER-CITY",
                            "type" : "AN",
                            "value" : "SYDNEY"
                        },
                        {
                            "field" : "CUSTOMER-COUNTRY",
                            "type" : "AN",
                            "value" : "AUSTRALIA"
                        }
                    ]
                }
            ]
        }
    ]
}

サービス・プロバイダーによって保守されているセッションがなかったため、呼び出し元は File Manager セッションを終了する 2 番目の要求を出す必要はありません。