関数の呼び出し - C++ SDK
項目一覧
Atlas Device SDK は非推奨です。 詳細については、 の廃止ページを参照してください。
このページの例では、2 つの引数を受け取り、それらを連結して結果を返す concatenate
という名前の Atlas Functionを呼び出す方法が示されています。
// concatenate: concatenate two strings exports = function(a, b) { return a + b; };
名前を使用して関数を呼び出す
重要
Atlas Functions を使用する際は、コード インジェクションから保護するために、クライアント データを必ずサニタイズしてください。
C++ SDK から関数を実行するには、 user
オブジェクトでCall_function()メンバー関数を使用します。 最初のパラメーターに関数の名前をstringとして渡します。 この関数は 2 つの引数を取ります。引数の string 配列として提供します。
// Connect to an App Services App and authenticate a user auto appConfig = realm::App::configuration(); appConfig.app_id = APP_ID; auto app = realm::App(appConfig); auto user = app.login(realm::App::credentials::anonymous()).get(); auto sync_config = user.flexible_sync_configuration(); // If the function takes arguments, pass them as a string array. // Any quotes within the array must be escaped. auto argArray = "[\"john.smith\", \"@companyemail.com\"]"; // Call an App Services function as the logged-in user auto result = user.call_function("concatenate", argArray).get(); // Verify that the result has a value CHECK(result); auto functionResult = result.value(); // Prints "Calling the concatenate function returned // "john.smith@companyemail.com"." std::cout << "Calling the concatenate function returned " << functionResult << ".\n";
コールバックでは、任意の string 結果または任意のエラーを提供できます。 上記の例では、結果に 値があることを確認しています。