Authentication
AuthenticationコンポーネントのUser Management機能を使用して、コンソールからメール招待を直接送信することでアプリケーションにユーザーを追加できます。その後、ユーザーはお好みの認証タイプに基づいて認証されます。また、Web SDK、Java SDK、Node SDK、Python SDK、またはAPIを使用してコードからアプリケーションにユーザーを追加し、クライアントアプリケーションにサインアップフォームを埋め込むこともできます。
まずPublic Sign Upオプションを有効にすることで、ユーザーサインインを実装できます。これにより、アプリケーションのユーザーは、認証の設定時に構成したログイン要素を使用してサインインできるようになります。また、Social Loginsを有効にして、エンドユーザーが一般的なソーシャルログインを使用してアプリケーションにサインインできるようにすることもできます。
AuthenticationのUser ManagementのRolesセクションに移動して、新しいロールを作成できます。ロールは現在、Data StoreとFile Storeにのみ適用されます。Data Storeでは各ユーザーロールの各テーブルのスコープと権限を定義でき、File Storeでは各ロールのフォルダアクセス権限を定義できます。
必要な認可が提供されていない場合、このエラーが発生します。CORSエラーを回避するには、ドメインを認可し、CORSとiFrameアクセスを有効にする必要があります。ドメインの追加と認可については、このヘルプセクションで確認できます。
Zoho Social Loginが有効化されると、API Consoleにアプリケーション用のクライアントが追加されます。この問題は、API Consoleでクライアントが削除された場合に発生します。この問題を解決するには、Catalyst Cloud ScaleのAuthenticationコンポーネントのAuthentication TypesのSocial Loginセクションに移動し、Zoho Social Loginを無効にしてから再度有効にする必要があります。
ユーザーサインインはクライアント側の操作であるため、Java SDKやNode SDKではサポートしていません。ただし、Web SDKでのみ利用可能です。
この問題は、アプリケーションに別のアカウントでログインした状態で、同じブラウザウィンドウで別のアカウントのパスワードを確認しようとした場合に発生します。別のブラウザまたは別のブラウザプロファイルで再試行することでこの問題を解決できます。
Data Store
Catalyst Data StoreのTextデータ型の許可される文字数制限は10,000文字です。
SELECT *、UPDATE *、INSERT *、DELETE *では、業界標準に準拠して1回のクエリで最大300行を取得できます。より多くのレコードを取得する必要がある場合は、LIMIT句を使用してクエリを反復し、offsetと値を適切に指定できます。
この問題を解決するには、Insert a New Row In a Table APIへのPOST呼び出し時にcontent-typeをapplication/jsonに設定していることを確認する必要があります。
Data Storeの1つのテーブルに最大100カラムを作成できます。
ファンクションでCatalyst Node.js SDKを適切に初期化していない場合、このエラーが発生します。Node.js SDKとData Storeが適切に初期化されていることを確認するには、以下の手順に従ってください。
const catalyst = require(“zcatalyst-sdk-node”);
const datastore = catalystApp.datastore(); //catalystApp変数の初期化は関数タイプごとに異なります
File Store
Catalystコンソールから直接、またはWeb、Node、Java、Python SDKを使用してFile Storeにファイルをアップロードできます。Catalyst APIを使用してFile Storeにアップロードすることもできます。
Catalystコンソールから直接、またはWeb、Node、Java、Python SDKを使用してFile Storeからファイルをダウンロードできます。Catalyst APIを使用してFile Storeからダウンロードすることもできます。
ファイルのダウンロード中にファイルの詳細を取得することはできません。ただし、Get Folder Details SDKを使用して単一または複数のフォルダの詳細を取得でき、Get the Details of a Specific File APIとGet the Details of Multiple Files APIを使用して特定のファイルまたは複数のファイルの詳細を取得できます。
空のファイルをアップロードしようとした場合、またはSDK経由でファイルオブジェクトを作成せずにファイルをアップロードしようとした場合に、このエラーが発生します。
間違ったファイルの場所を入力した場合、または読み取ろうとしているファイルが現在のディレクトリまたは一時ディレクトリに存在しない場合にこのエラーが発生します。ファイルを別のディレクトリに保存している場合は、正しいパスを指定し、ファイルが現在のファンクションのディレクトリに存在することを確認する必要があります。
Cache
キャッシュ値の最大長は16,000文字です。
キャッシュセグメントはCatalystコンソールからのみ作成できます。APIを使用して作成することはできません。Catalystは自動作成されたデフォルトセグメントも提供しており、そちらを使用できます。
Catalystコンソールから、またはJava SDK、Node SDK、Python SDK、もしくはInsert a Key-Value Pair In a Cache Segment APIを使用して、キャッシュセグメントにキーと値のペアを追加できます。
Get the Value of a Cache Key API、およびJava SDK、Node SDK、Python SDKを使用してキャッシュセグメントから値を取得できます。
Cron
Application Alertsを使用して、Cron、Event Listener、またはLogsで障害が発生した場合に通知を受け取ることができます。これらのコンポーネントのいずれかで障害が発生するたび、または特定のイベントが発生するたびにメールアラートを設定できます。
Search
Cloud Scale Searchを組み込むには、Data Storeでカラムを作成する際にSearch Indexトグルを有効にする必要があります。後からカラムを編集して有効にすることもできます。Search Index機能は、TextおよびEncrypted Textデータ型のカラムでは使用できません。Search Indexが有効なすべてのカラムのリストと、アプリケーションにSearchを組み込むためのコードスニペットは、すべての開発環境のCatalystコンソールのStorage -> Searchセクションで確認できます。
API Gateway
API Gatewayコンポーネントを使用してこの目的を達成できます。API Gatewayはクライアントとサーバー間の中間層です。リバースプロキシとして機能し、クライアントリクエストを個々のサービスにルーティングします。プロジェクトでAPI Gatewayを有効にすると、これらのターゲットにアクセスするすべてのクライアントリクエストはこのゲートウェイによって処理されます。これにより、クライアントをサービスから分離することで、これらのコンポーネントがクライアントに直接公開されることを防ぎます。
プロジェクトでAPI Gatewayコンポーネントを有効にし、ファンクションエンドポイント用のAPIを作成していない場合、このエラーが発生します。API Gatewayを有効にすると、API を作成するまでファンクションとWebクライアントのURLにアクセスできなくなります。そのため、ファンクションとクライアント用のAPIをすぐに作成するか、CatalystコンソールからAPI Gatewayを無効にしてからアプリケーションURLにアクセスして問題を解決する必要があります。
API Keyベースの認証を有効にした場合、認証はCatalystがプロジェクト用に自動的に生成するAPIキーによって処理されます。リクエストヘッダーまたはクエリパラメーターとして、キー名ZCFKEYとともにAPI Key値を渡す必要があります。
API Keyは開発環境のすべてのプロジェクトで共通です。Catalystプロジェクトを本番環境にデプロイすると、Catalystは本番用に異なるAPIキーを提供します。そのため、本番環境ではプロジェクトごとに個別のAPIキーが付与されます。
ローカルシステムに最新のAPI Gatewayルールがない場合、この問題が発生する可能性があります。CLIを通じてローカルシステムからプロジェクト全体をデプロイすると、API Gatewayルールもデプロイされます。更新された設定がローカルシステムに存在しない場合、リモートコンソールの最新ルールがデプロイされた設定で置き換えられます。この問題を解決するには、まずcatalyst pullを実行して最新のAPI Gatewayルールをすべてシステムにプルしてから、プロジェクトをデプロイしてください。
Domain Mapping
はい、CatalystはアプリケーションにマッピングするすべてのドメインにグループSSL証明書を無料で提供し、セキュリティを確保します。
このエラーを解決するには、Catalystアプリケーションにマッピングしたいドメインがドメインプロバイダーのホスティングサイトですでにライブでホストされているか確認し、以下の手順に従ってください:
ステップ1:
DNS設定でドメインのCNAMEレコードを作成し、サブドメインの値をHost Name/Alias/CNAMEとして追加します。
例えば、ドメインアドレスが「portal.zylker.com」の場合、Host Name/Alias/CNAMEの値として「portal」を、Destination/Points Toの値として「catalyst.cs.zohohost.com」を追加する必要があります。
Catalystコンソールでドメイン名を追加します。プロセスは次のステップ -> Verify Ownershipに進みます。
ステップ2:
Catalystが特定のマッピング用に一意のハッシュキー値を生成します。
DNS設定でドメインの新しいCNAMEレコードを作成し、以下の値を追加します:
hash_key.subdomainをHost Name/Alias/CNAMEとして
例えば、Catalystが生成したハッシュキーが「c12to00001x11pl1234h9e33w44h6789」で、サブドメインが「portal」の場合、Host Nameとして「c12to00001x11pl1234h9e33w44h6789.portal」を入力する必要があります。
注意:Destination/Points Toの値としてサブドメイン「catalyst.cs.zohohost.com」を指定してください。変更がDNSサーバーに反映されるまで時間がかかる場合があります。変更が反映された後、Catalystでドメインの所有権が検証されます。詳細なヘルプドキュメントはこちらで確認できます。
CNAMEエントリが作成されておらず、catalyst.cs.zohohost.comにマッピングされていない場合、追加しようとするとコンソールに「CNAME not mapped correctly」エラーが表示されます。こちらの手順に従ってCatalystを指すCNAMEエントリを作成することで、このエラーを解決できます。