iOS SDK API

GTCaptcha4SessionTaskDelegate

キャプチャセッションタスク用のデリゲートプロトコル。

gtCaptchaSession:didReceive:result:

キャプチャセッションの結果パラメータのコールバック。

宣言

- (void)gtCaptchaSession:(GTCaptcha4Session *)captchaSession didReceive:(NSString *)status result:(nullable NSDictionary *)result;
              
              - (void)gtCaptchaSession:(GTCaptcha4Session *)captchaSession
              didReceive:(NSString *)status
                  result:(nullable NSDictionary *)result;

            
このコードブロックはフローティングウィンドウ内に表示されます

パラメータ

パラメータ 説明
captchaSession キャプチャセッション
status ステータスコード。@"0"/@"1": 未完了/完了。
status が @"1" の場合、成功を示し、結果は二次検証が必要です。
result 結果検証パラメータ。

議論

結果パラメータを取得した後、それらをビジネスサーバーに送信してパラメータ検証を行う必要があります。result の例:

{ pass_token = "eb6d2e064524ae96ddc99a0e6e15f95dbb234008d108f0db269f27d426bcf3c6"; gen_time = "1660894030"; captcha_output = "fI9I34MDjVi10gJO_EqXwNpN8hK0rYLEPVWSDE4W6kc1umDoTHIlD_t6YQNNpPG2tJlKR8he6WFWkkllU8goGeNVNOzhqmAm256BpK8qAEHNrOjHzkNagfIcx_A21ssPrG6YlnnHFx3PfBnbrn5fb2aKDIi0I5xmCUjxq0dsFuANLIQVtllMjkJ7-1l_j-Wz"; captcha_id = "647f5ed2ed8acb4be36784e01556bb71"; lot_number = "0861c607d519469b9117d0c6dd551fe3"; }
              
              {
    pass_token = "eb6d2e064524ae96ddc99a0e6e15f95dbb234008d108f0db269f27d426bcf3c6";
    gen_time = "1660894030";
    captcha_output = "fI9I34MDjVi10gJO_EqXwNpN8hK0rYLEPVWSDE4W6kc1umDoTHIlD_t6YQNNpPG2tJlKR8he6WFWkkllU8goGeNVNOzhqmAm256BpK8qAEHNrOjHzkNagfIcx_A21ssPrG6YlnnHFx3PfBnbrn5fb2aKDIi0I5xmCUjxq0dsFuANLIQVtllMjkJ7-1l_j-Wz";
    captcha_id = "647f5ed2ed8acb4be36784e01556bb71";
    lot_number = "0861c607d519469b9117d0c6dd551fe3";
}

            
このコードブロックはフローティングウィンドウ内に表示されます

gtCaptchaSession:didReceiveError:

キャプチャセッション中に発生したエラーのコールバック。

宣言

- (void)gtCaptchaSession:(GTCaptcha4Session *)captchaSession didReceiveError:(GTC4Error *)error;
              
              - (void)gtCaptchaSession:(GTCaptcha4Session *)captchaSession
         didReceiveError:(GTC4Error *)error;

            
このコードブロックはフローティングウィンドウ内に表示されます

パラメータ

パラメータ 説明
captchaSession キャプチャセッション
error エラー説明オブジェクト

関連項目

エラー

GTCaptcha4Session

キャプチャセッション

delegate

キャプチャセッションタスク用のデリゲート。

宣言

@property (nonatomic, weak) id<GTCaptcha4SessionTaskDelegate> delegate;
              
              @property (nonatomic, weak) id<GTCaptcha4SessionTaskDelegate> delegate;

            
このコードブロックはフローティングウィンドウ内に表示されます

captchaID

現在のセッションのキャプチャID。

宣言

@property (nonnull, readonly, nonatomic, strong) NSString *captchaID;
              
              @property (nonnull, readonly, nonatomic, strong) NSString *captchaID;

            
このコードブロックはフローティングウィンドウ内に表示されます

challenge

現在のセッションのチャレンジ番号。

宣言

@property (nullable, readonly, nonatomic, strong) NSString *challenge;
              
              @property (nullable, readonly, nonatomic, strong) NSString *challenge;

            
このコードブロックはフローティングウィンドウ内に表示されます

configuration

現在のキャプチャセッションの設定。

宣言

@property (nonnull, readonly, nonatomic, strong) GTCaptcha4SessionConfiguration *configuration;
              
              @property (nonnull, readonly, nonatomic, strong) GTCaptcha4SessionConfiguration *configuration;

            
このコードブロックはフローティングウィンドウ内に表示されます

sessionWithCaptchaID:

新しいキャプチャセッションインスタンスを作成。

宣言

+ (instancetype)sessionWithCaptchaID:(NSString *)captchaID;
              
              + (instancetype)sessionWithCaptchaID:(NSString *)captchaID;

            
このコードブロックはフローティングウィンドウ内に表示されます

パラメータ

パラメータ 説明
captchaID キャプチャID

戻り値

新しい GTCaptcha4Session インスタンス

sessionWithCaptchaID:configuration:

新しいキャプチャセッションインスタンスを作成。

宣言

+ (instancetype)sessionWithCaptchaID:(NSString *)captchaID configuration:(nullable GTCaptcha4SessionConfiguration *)configuration;
              
              + (instancetype)sessionWithCaptchaID:(NSString *)captchaID
                       configuration:(nullable GTCaptcha4SessionConfiguration *)configuration;

            
このコードブロックはフローティングウィンドウ内に表示されます
パラメータ 説明
captchaID キャプチャID
configuration セッション設定

戻り値

新しい GTCaptcha4Session インスタンス

initWithCaptchaID:

新しいキャプチャセッションインスタンスを作成。

宣言

- (instancetype)initWithCaptchaID:(NSString *)captchaID;
              
              - (instancetype)initWithCaptchaID:(NSString *)captchaID;

            
このコードブロックはフローティングウィンドウ内に表示されます

パラメータ

パラメータ 説明
captchaID キャプチャID

戻り値

新しい GTCaptcha4Session インスタンス

initWithCaptchaID:configuration:

新しいキャプチャセッションインスタンスを作成。

宣言

- (instancetype)initWithCaptchaID:(NSString *)captchaID configuration:(nullable GTCaptcha4SessionConfiguration *)configuration;
              
              - (instancetype)initWithCaptchaID:(NSString *)captchaID
                    configuration:(nullable GTCaptcha4SessionConfiguration *)configuration;

            
このコードブロックはフローティングウィンドウ内に表示されます
パラメータ 説明
captchaID キャプチャID
configuration セッション設定

戻り値

新しい GTCaptcha4Session インスタンス

verify

検証を開始。

宣言

- (void)verify;
              
              - (void)verify;

            
このコードブロックはフローティングウィンドウ内に表示されます

cancel

検証をキャンセル。

宣言

- (void)cancel;
              
              - (void)cancel;

            
このコードブロックはフローティングウィンドウ内に表示されます

sdkVersion

SDKバージョンを取得。

宣言

+ (NSString *)sdkVersion;
              
              + (NSString *)sdkVersion;

            
このコードブロックはフローティングウィンドウ内に表示されます

GTCaptcha4SessionConfiguration

キャプチャセッション設定

GTC4UserInterfaceStyle

キャプチャインターフェーススタイル。

宣言

typedef NS_ENUM(NSInteger, GTC4UserInterfaceStyle) { /** システムスタイルに従う */ GTC4UserInterfaceStyleSystem = 0, /** ライトスタイル */ GTC4UserInterfaceStyleLight, /** ダークスタイル */ GTC4UserInterfaceStyleDark, /** デフォルトスタイル */ GTC4UserInterfaceStyleDefault = GTC4UserInterfaceStyleLight };
              
              typedef NS_ENUM(NSInteger, GTC4UserInterfaceStyle) {
    /** システムスタイルに従う */
    GTC4UserInterfaceStyleSystem = 0,
    /** ライトスタイル */
    GTC4UserInterfaceStyleLight,
    /** ダークスタイル */
    GTC4UserInterfaceStyleDark,
    /** デフォルトスタイル */
    GTC4UserInterfaceStyleDefault = GTC4UserInterfaceStyleLight
};

            
このコードブロックはフローティングウィンドウ内に表示されます

resourcePath

静的リソースへのリモートアクセスの完全なパス。デフォルトは空です。

宣言

@property (nullable, nonatomic, strong) NSString *resourcePath;
              
              @property (nullable, nonatomic, strong) NSString *resourcePath;

            
このコードブロックはフローティングウィンドウ内に表示されます

protocol

静的リソースへのリモートアクセスに使用されるプロトコル。デフォルトは@"https"です。

宣言

@property (nonatomic, strong) NSString *protocol;
              
              @property (nonatomic, strong) NSString *protocol;

            
このコードブロックはフローティングウィンドウ内に表示されます

userInterfaceStyle

インターフェースとステータスバーのスタイル。デフォルトはプレーンな白です。

宣言

@property (nonatomic, assign) GTC4UserInterfaceStyle userInterfaceStyle;
              
              @property (nonatomic, assign) GTC4UserInterfaceStyle userInterfaceStyle;

            
このコードブロックはフローティングウィンドウ内に表示されます

backgroundColor

背景色。デフォルトは透明です。

宣言

@property (nonatomic, strong) UIColor *backgroundColor;
              
              @property (nonatomic, strong) UIColor *backgroundColor;

            
このコードブロックはフローティングウィンドウ内に表示されます

debugEnable

デバッグモードのスイッチ。デフォルトはオフです。

宣言

@property (nonatomic, assign) BOOL debugEnable;
              
              @property (nonatomic, assign) BOOL debugEnable;

            
このコードブロックはフローティングウィンドウ内に表示されます

backgroundUserInteractionEnable

背景とのインタラクション。デフォルトは有効です。

宣言

@property (nonatomic, assign) BOOL backgroundUserInteractionEnable;
              
              @property (nonatomic, assign) BOOL backgroundUserInteractionEnable;

            
このコードブロックはフローティングウィンドウ内に表示されます

timeout

リクエストのタイムアウト時間。デフォルトは8秒です。

宣言

@property (nonatomic, assign) NSTimeInterval timeout;
              
              @property (nonatomic, assign) NSTimeInterval timeout;

            
このコードブロックはフローティングウィンドウ内に表示されます

language

言語。デフォルトはシステムに従います。特定の言語については、言語コードを参照してください。

宣言

@property (nonatomic, strong) NSString *language;
              
              @property (nonatomic, strong) NSString *language;

            
このコードブロックはフローティングウィンドウ内に表示されます

supportedInterfaceOrientations

サポートされている画面の向き。

宣言

@property (assign, nonatomic) UIInterfaceOrientationMask supportedInterfaceOrientations;
              
              @property (assign, nonatomic) UIInterfaceOrientationMask supportedInterfaceOrientations;

            
このコードブロックはフローティングウィンドウ内に表示されます

additionalParameter

追加パラメータ。デフォルトは空です。パラメータは組み立てられ、engagelabに送信されます。

宣言

@property (nullable, nonatomic, strong) NSDictionary *additionalParameter;
              
              @property (nullable, nonatomic, strong) NSDictionary *additionalParameter;

            
このコードブロックはフローティングウィンドウ内に表示されます

ディスカッション

サポートされているキーと値のペアのリストは以下の通りです:

|キー |タイプ |説明|デフォルト値| |---- |---- |---------- | ----------- | | @"loading" | NSString | カスタムローディング状態インジケーター。WebViewでHTMLを読み込むためのローディングリソースの相対パス。空文字列を設定するとローディングがキャンセルされます。 | @"./gt4-loading.gif" | | @"rem" | NSNumber | キャプチャ全体のスケーリング比率を設定します。 | @(1) | | @"hideBar" | NSArray<NSString *> * | 次の検証インターフェースで閉じるボタンとリフレッシュボタンを非表示にします。@[@"close", @"refresh"]を設定すると、閉じるボタンとリフレッシュボタンの両方が非表示になります。 | @[] | | @"nextWidth" | NSString | キャプチャポップアップの幅を設定します。単位が必要です(例: @"300px")。 | nil | | @"riskType" | NSString | リスクコントロール統合と組み合わせて検証形式を指定します。 | nil | | @"hideSuccess" | NSNumber | 検証成功ポップアップを非表示にします。@(0)/@(1)は非表示にしないまたは非表示にするを意味します。 | @(0) |

サンプルコード

#define captchaID @"1234567890abcdef" GTCaptcha4SessionConfiguration *config = [GTCaptcha4SessionConfiguration defaultConfiguration]; NSMutableDictionary *params = [@{} mutableCopy]; [params setValue:@(1.25) forKey:@"rem"]; // 1.25倍にスケールアップ [params setValue:@[@"close", @"refresh"] forKey:@"hideBar"]; // 閉じるボタンとリフレッシュボタンを非表示 [params setValue:@"300px" forKey:@"nextWidth"]; [params setValue:@"click" forKey:@"riskType"]; // インテリジェントクリック検証を指定(バックエンド設定と一致) [params setValue:@(1) forKey:@"hideSuccess"]; // NSNumberを使用してブール値を表現 [params setValue:@"./gt4-loading.gif" forKey:@"loading"]; config.additionalParameter = params; GTCaptcha4Session *captchaSession = [GTCaptcha4Session sessionWithCaptchaID:captchaID configuration:config]; ...
              
              #define captchaID @"1234567890abcdef"

GTCaptcha4SessionConfiguration *config = [GTCaptcha4SessionConfiguration defaultConfiguration];

NSMutableDictionary *params = [@{} mutableCopy];
[params setValue:@(1.25)                  forKey:@"rem"]; // 1.25倍にスケールアップ
[params setValue:@[@"close", @"refresh"]  forKey:@"hideBar"]; // 閉じるボタンとリフレッシュボタンを非表示
[params setValue:@"300px"                 forKey:@"nextWidth"];
[params setValue:@"click"                 forKey:@"riskType"]; // インテリジェントクリック検証を指定(バックエンド設定と一致)
[params setValue:@(1)                     forKey:@"hideSuccess"]; // NSNumberを使用してブール値を表現
[params setValue:@"./gt4-loading.gif"     forKey:@"loading"];

config.additionalParameter = params;

GTCaptcha4Session *captchaSession = [GTCaptcha4Session sessionWithCaptchaID:captchaID configuration:config];
...

            
このコードブロックはフローティングウィンドウ内に表示されます

defaultConfiguration

デフォルト設定を取得します。

宣言

+ (GTCaptcha4SessionConfiguration *)defaultConfiguration;
              
              + (GTCaptcha4SessionConfiguration *)defaultConfiguration;

            
このコードブロックはフローティングウィンドウ内に表示されます

戻り値

+ (GTCaptcha4SessionConfiguration *)defaultConfiguration { GTCaptcha4SessionConfiguration *config = [[GTCaptcha4SessionConfiguration alloc] init]; config.debugEnable = NO; config.timeout = 8.0; config.language = [GTC4Utils systemLanguage]; config.protocol = @"https"; config.userInterfaceStyle = GTC4UserInterfaceStyleDefault; config.backgroundColor = [UIColor clearColor]; config.backgroundUserInteractionEnable = YES; return config; }
              
              + (GTCaptcha4SessionConfiguration *)defaultConfiguration {
    GTCaptcha4SessionConfiguration *config = [[GTCaptcha4SessionConfiguration alloc] init];
    config.debugEnable  = NO;
    config.timeout      = 8.0;
    config.language     = [GTC4Utils systemLanguage];
    config.protocol     = @"https";
    config.userInterfaceStyle = GTC4UserInterfaceStyleDefault;
    config.backgroundColor = [UIColor clearColor];
    config.backgroundUserInteractionEnable = YES;
    
    return config;
}

            
このコードブロックはフローティングウィンドウ内に表示されます

エラー

エラー説明オブジェクト

/// 無効なパラメータです。入力パラメータを確認してください。 FOUNDATION_EXPORT NSString * const GTC4ErrorCodeInvalidParameter; /// 操作が失敗しました。詳細については説明を確認してください。 FOUNDATION_EXPORT NSString * const GTC4ErrorCodeOperationFail; /// リソースが見つかりません。GTCaptcha4.bundleファイルが完全であることを確認してください。 FOUNDATION_EXPORT NSString * const GTC4ErrorCodeMissedResource; /// ユーザーが検証をキャンセルしました。 FOUNDATION_EXPORT NSString * const GTC4ErrorCodeUserDidCancel; /// ファイルの読み込みに失敗しました。完全なGTCaptcha4.bundleファイルがインポートされているか、設定されたリモート静的リソースにアクセス可能であるかを確認してください。 FOUNDATION_EXPORT NSString * const GTC4ErrorCodeLoadFileFailure; /// 読み込みタイムアウト。 FOUNDATION_EXPORT NSString * const GTC4ErrorCodeTimeout; /// Javascriptスクリプトの実行に失敗しました。 FOUNDATION_EXPORT NSString * const GTC4ErrorCodeEvaluatingJavascriptFail; /// Javascriptがエラーを返しました。 FOUNDATION_EXPORT NSString * const GTC4ErrorCodeJavascriptError; /// WebViewのメモリ警告。 FOUNDATION_EXPORT NSString * const GTC4ErrorCodeWebViewMemoryWarning; /// 不明なエラー。 FOUNDATION_EXPORT NSString * const GTC4ErrorCodeUnknown;
              
              /// 無効なパラメータです。入力パラメータを確認してください。
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeInvalidParameter;
/// 操作が失敗しました。詳細については説明を確認してください。
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeOperationFail;
/// リソースが見つかりません。GTCaptcha4.bundleファイルが完全であることを確認してください。
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeMissedResource;

/// ユーザーが検証をキャンセルしました。
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeUserDidCancel;

/// ファイルの読み込みに失敗しました。完全なGTCaptcha4.bundleファイルがインポートされているか、設定されたリモート静的リソースにアクセス可能であるかを確認してください。
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeLoadFileFailure;
/// 読み込みタイムアウト。
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeTimeout;
/// Javascriptスクリプトの実行に失敗しました。
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeEvaluatingJavascriptFail;
/// Javascriptがエラーを返しました。
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeJavascriptError;
/// WebViewのメモリ警告。
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeWebViewMemoryWarning;

/// 不明なエラー。
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeUnknown;

            
このコードブロックはフローティングウィンドウ内に表示されます

code

エラーコード。マッチングと処理に使用できます。

宣言

@property (readonly, nonatomic, strong) NSString *code;
              
              @property (readonly, nonatomic, strong) NSString *code;

            
このコードブロックはフローティングウィンドウ内に表示されます

関連項目

上記のエラーコードリストを参照してください。

msg

エラーメッセージ。ユーザーインターフェースに表示できます。

宣言

@property (readonly, nonatomic, strong) NSString *msg;
              
              @property (readonly, nonatomic, strong) NSString *msg;

            
このコードブロックはフローティングウィンドウ内に表示されます

desc

詳細なエラー説明。詳細なトラブルシューティングに使用します。

宣言

@property (readonly, nonatomic, strong) NSDictionary *desc;
              
              @property (readonly, nonatomic, strong) NSDictionary *desc;

            
このコードブロックはフローティングウィンドウ内に表示されます

ディスカッション

検証を使用するユーザーの運用上の問題をサポートするために使用できます。

icon
お問い合わせ