API SDK iOS
GTCaptcha4SessionTaskDelegate
Protokol delegasi tugas sesi verifikasi
gtCaptchaSession:didReceive:result:
Callback untuk parameter hasil dari sesi verifikasi.
Deklarasi
- (void)gtCaptchaSession:(GTCaptcha4Session *)captchaSession
didReceive:(NSString *)status
result:(nullable NSDictionary *)result;
Parameter
| Param | Deskripsi |
|---|---|
| captchaSession | Sesi verifikasi |
| status | Kode status. @"0"/@"1": Belum Selesai/Selesai. Jika status adalah @"1", berarti berhasil, dan hasilnya perlu diverifikasi sekunder. |
| result | Parameter hasil verifikasi. |
Diskusi
Setelah mendapatkan parameter hasil verifikasi, parameter tersebut perlu dikirimkan ke server bisnis untuk menyelesaikan verifikasi parameter. Contoh result:
{
pass_token = "eb6d2e064524ae96ddc99a0e6e15f95dbb234008d108f0db269f27d426bcf3c6";
gen_time = "1660894030";
captcha_output = "fI9I34MDjVi10gJO_EqXwNpN8hK0rYLEPVWSDE4W6kc1umDoTHIlD_t6YQNNpPG2tJlKR8he6WFWkkllU8goGeNVNOzhqmAm256BpK8qAEHNrOjHzkNagfIcx_A21ssPrG6YlnnHFx3PfBnbrn5fb2aKDIi0I5xmCUjxq0dsFuANLIQVtllMjkJ7-1l_j-Wz";
captcha_id = "647f5ed2ed8acb4be36784e01556bb71";
lot_number = "0861c607d519469b9117d0c6dd551fe3";
}
gtCaptchaSession:didReceiveError:
Callback untuk error yang terjadi selama sesi verifikasi.
Deklarasi
- (void)gtCaptchaSession:(GTCaptcha4Session *)captchaSession
didReceiveError:(GTC4Error *)error;
Parameter
| Param | Deskripsi |
|---|---|
| captchaSession | Sesi verifikasi |
| error | Objek deskripsi error |
Lihat juga
GTCaptcha4Session
Sesi verifikasi
delegate
Delegasi tugas sesi verifikasi.
Deklarasi
@property (nonatomic, weak) id<GTCaptcha4SessionTaskDelegate> delegate;
captchaID
ID verifikasi dari sesi saat ini.
Deklarasi
@property (nonnull, readonly, nonatomic, strong) NSString *captchaID;
challenge
Nomor seri dari sesi verifikasi saat ini.
Deklarasi
@property (nullable, readonly, nonatomic, strong) NSString *challenge;
configuration
Konfigurasi dari sesi verifikasi saat ini.
Deklarasi
@property (nonnull, readonly, nonatomic, strong) GTCaptcha4SessionConfiguration *configuration;
sessionWithCaptchaID:
Buat instance sesi verifikasi baru.
Deklarasi
+ (instancetype)sessionWithCaptchaID:(NSString *)captchaID;
Parameter
| Param | Deskripsi |
|---|---|
| captchaID | ID verifikasi |
Nilai Kembali
Instance baru dari GTCaptcha4Session
sessionWithCaptchaID:configuration:
Buat instance sesi verifikasi baru.
Deklarasi
+ (instancetype)sessionWithCaptchaID:(NSString *)captchaID
configuration:(nullable GTCaptcha4SessionConfiguration *)configuration;
| Param | Deskripsi |
|---|---|
| captchaID | ID verifikasi |
| configuration | Konfigurasi sesi |
Nilai Kembali
Instance baru dari GTCaptcha4Session
initWithCaptchaID:
Buat instance sesi verifikasi baru.
Deklarasi
- (instancetype)initWithCaptchaID:(NSString *)captchaID;
Parameter
| Param | Deskripsi |
|---|---|
| captchaID | ID verifikasi |
Nilai Kembali
Instance baru dari GTCaptcha4Session
initWithCaptchaID:configuration:
Buat instance sesi verifikasi baru.
Deklarasi
- (instancetype)initWithCaptchaID:(NSString *)captchaID
configuration:(nullable GTCaptcha4SessionConfiguration *)configuration;
| Param | Deskripsi |
|---|---|
| captchaID | ID verifikasi |
| configuration | Konfigurasi sesi |
Nilai Kembali
Instance baru dari GTCaptcha4Session
verify
Mulai verifikasi.
Deklarasi
- (void)verify;
cancel
Batalkan verifikasi.
Deklarasi
- (void)cancel;
sdkVersion
Dapatkan nomor versi SDK.
Deklarasi
+ (NSString *)sdkVersion;
GTCaptcha4SessionConfiguration
Konfigurasi sesi verifikasi
GTC4UserInterfaceStyle
Gaya antarmuka verifikasi.
Deklarasi
typedef NS_ENUM(NSInteger, GTC4UserInterfaceStyle) {
/** Ikuti gaya sistem */
GTC4UserInterfaceStyleSystem = 0,
/** Gaya terang */
GTC4UserInterfaceStyleLight,
/** Gaya gelap */
GTC4UserInterfaceStyleDark,
/** Gaya default */
GTC4UserInterfaceStyleDefault = GTC4UserInterfaceStyleLight
};
resourcePath
Path lengkap untuk akses jarak jauh ke sumber daya statis, default kosong.
Deklarasi
@property (nullable, nonatomic, strong) NSString *resourcePath;
protocol
Protokol yang digunakan untuk akses jarak jauh ke sumber daya statis, default adalah @“https”.
Deklarasi
@property (nonatomic, strong) NSString *protocol;
userInterfaceStyle
Gaya antarmuka dan status bar, default putih polos.
Deklarasi
@property (nonatomic, assign) GTC4UserInterfaceStyle userInterfaceStyle;
backgroundColor
Warna latar belakang, default transparan.
Deklarasi
@property (nonatomic, strong) UIColor *backgroundColor;
debugEnable
Sakelar mode debug, default nonaktif.
Deklarasi
@property (nonatomic, assign) BOOL debugEnable;
backgroundUserInteractionEnable
Interaksi dengan latar belakang, default aktif.
Deklarasi
@property (nonatomic, assign) BOOL backgroundUserInteractionEnable;
timeout
Durasi batas waktu permintaan, default 8 detik.
Deklarasi
@property (nonatomic, assign) NSTimeInterval timeout;
language
Bahasa, default mengikuti sistem. Untuk bahasa tertentu, lihat kode singkat bahasa.
Deklarasi
@property (nonatomic, strong) NSString *language;
supportedInterfaceOrientations
Orientasi layar yang didukung.
Deklarasi
@property (assign, nonatomic) UIInterfaceOrientationMask supportedInterfaceOrientations;
additionalParameter
Parameter tambahan, default kosong. Parameter akan dirangkai dan dikirim ke engagelab.
Deklarasi
@property (nullable, nonatomic, strong) NSDictionary *additionalParameter;
Diskusi
Daftar key-value yang didukung sebagai berikut:
| Key | Tipe | Deskripsi | Nilai Default |
|---|---|---|---|
@"loading" |
NSString |
Indikator status loading kustom, path relatif resource loading untuk WebView yang memuat html. Mengatur string kosong akan membatalkan loading. | @"./gt4-loading.gif" |
@"rem" |
NSNumber |
Mengatur rasio skala keseluruhan kode verifikasi. | @(1) |
@"hideBar" |
NSArray<NSString *> * |
Sembunyikan tombol tutup dan refresh pada layar verifikasi berikutnya. Mengatur @[@"close", @"refresh"] akan menyembunyikan tombol tutup dan refresh. |
@[] |
@"nextWidth" |
NSString |
Lebar popup kode verifikasi, dengan satuan seperti @"300px". |
nil |
@"riskType" |
NSString |
Tentukan tipe verifikasi bersama integrasi kontrol risiko. | nil |
@"hideSuccess" |
NSNumber |
Sembunyikan popup sukses verifikasi, @(0)/@(1) untuk tidak/sembunyikan. |
@(0) |
Contoh Kode
#define captchaID @"1234567890abcdef"
GTCaptcha4SessionConfiguration *config = [GTCaptcha4SessionConfiguration defaultConfiguration];
NSMutableDictionary *params = [@{} mutableCopy];
[params setValue:@(1.25) forKey:@"rem"]; // Perbesar 1,25 kali
[params setValue:@[@"close", @"refresh"] forKey:@"hideBar"]; // Sembunyikan tombol tutup dan refresh
[params setValue:@"300px" forKey:@"nextWidth"];
[params setValue:@"click" forKey:@"riskType"]; // Tentukan verifikasi klik pintar, konsisten dengan konfigurasi backend
[params setValue:@(1) forKey:@"hideSuccess"]; // Gunakan NSNumber untuk merepresentasikan nilai boolean
[params setValue:@"./gt4-loading.gif" forKey:@"loading"];
config.additionalParameter = params;
GTCaptcha4Session *captchaSession = [GTCaptcha4Session sessionWithCaptchaID:captchaID configuration:config];
...
defaultConfiguration
Dapatkan konfigurasi default.
Deklarasi
+ (GTCaptcha4SessionConfiguration *)defaultConfiguration;
Nilai Kembali
+ (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;
}
Error
Objek deskripsi error
/// Parameter tidak valid. Silakan periksa parameter input.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeInvalidParameter;
/// Operasi gagal. Periksa deskripsi detail.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeOperationFail;
/// Sumber daya hilang. Silakan periksa apakah file GTCaptcha4.bundle sudah lengkap.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeMissedResource;
/// Pengguna membatalkan verifikasi.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeUserDidCancel;
/// Gagal memuat file. Silakan periksa apakah file GTCaptcha4.bundle sudah diimpor lengkap atau sumber daya statis jarak jauh yang dikonfigurasi dapat diakses.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeLoadFileFailure;
/// Batas waktu loading.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeTimeout;
/// Gagal menjalankan skrip Javascript.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeEvaluatingJavascriptFail;
/// Javascript mengembalikan error.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeJavascriptError;
/// Peringatan memori WebView.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeWebViewMemoryWarning;
/// Error tidak diketahui.
FOUNDATION_EXPORT NSString * const GTC4ErrorCodeUnknown;
code
Kode error. Dapat digunakan untuk pencocokan dan penanganan.
Deklarasi
@property (readonly, nonatomic, strong) NSString *code;
Lihat juga
Lihat daftar kode error di atas.
msg
Pesan error. Dapat digunakan untuk tampilan antarmuka pengguna.
Deklarasi
@property (readonly, nonatomic, strong) NSString *msg;
desc
Deskripsi error detail. Digunakan untuk penelusuran masalah secara detail.
Deklarasi
@property (readonly, nonatomic, strong) NSDictionary *desc;
Diskusi
Dapat digunakan untuk mendukung penanganan masalah operasional pada verifikasi pengguna.










