タイトル : サンプル1.簡易なUI、データをAPIで取り出す AppSuite
更新日 : 2024-11-19
カテゴリ : プログラミング
タグ :
desknets   
appsuite   

AppSuite 少し再確認 2024

UI作成

部品をドラッグアンドドロップして、部品の設定を書き換えて、アプリを作ります。

図1

データ入力

上記で作ったアプリをデスクネッツ上に公開し、1件だけデータ入力してみました。

一覧表示画面です。

図1

上記のアプリを呼び出すPython

データ一覧API : action=list_data を使います。

ドキュメントは AppSuite(付録) の AppSuite APIの仕様 - データ一覧API です。

import requests
import pprint

# appsr.cgiのURL
APPSR_URL = "http://localhost:8081/cgi-bin/dneo/appsr.cgi"
# アクセスキー
ACCESS_KEY = "uSRV1w8X2IWtJrxyDpWXxKy1EEEEV0w83CIQcLRH0b4"
# アプリケーションID
APP_ID = "sample01"

# アプリに接続するURL
url = f"{APPSR_URL}?access_key={ACCESS_KEY}&app_id=@{APP_ID}"

try:
    # AppSuiteのアプリをAPIで呼び出し
    #   action : list_data データをリストで取得する
    response = requests.get(f"{url}&action=list_data")

    # レスポンスのJSON取得
    json_data = response.json()

    # 出力
    pprint.pprint(json_data)

except Exception as e:
    print(e)

実行結果

$ python sample01_1.py
{'list': {'item': [{'\\permissions': {'allow_delete': 'on',
                                      'allow_write': 'on'},
                    'revision': {'deny_write': 'on', 'val': '1'},
                    'データID': {'deny_write': 'on', 'val': '1'},
                    'メッセージ': {'val': 'こんにちは。メッセージの1番目です。'},
                    '宛先': {'val': '\tグループ内\t'},
                    '更新日時': {'deny_write': 'on', 'val': '2024-11-19T20:02:02'},
                    '更新者': {'deny_write': 'on',
                            'val': {'users': {'item': [{'Name': 'アプリ開発者',
                                                        'description': {'assign': ''},
                                                        'id': '2',
                                                        'summary': ''}]}}},
                    '登録日時': {'deny_write': 'on', 'val': '2024-11-19T20:02:02'},
                    '登録者': {'deny_write': 'on',
                            'val': {'users': {'item': [{'Name': 'アプリ開発者',
                                                        'description': {'assign': ''},
                                                        'id': '2',
                                                        'summary': ''}]}}},
                    '種別': {'val': '標準'}}]},
 'row': '',
 'servertime': '20241119202104',
 'status': 'ok'}

$