SDK
SDK の初期化のためには Credential, Session というオブジェクトを作成する必要があります。
Credential
GS2 のAPIキーを表現するオブジェクトです。
BasicGs2Credential
というクラスが定義されており、clientId / clientSecret を使用したAPIの利用時には、こちらを使用します。
BasicGs2Credential Request
引数名 | 説明 |
---|---|
clientId | クレデンシャル情報 |
clientSecret | クレデンシャル情報 |
Session
Session には2種類存在し、HTTP通信を利用する Gs2RestSession
と WebSocket通信を利用する Gs2WebSocketSession
です。
プログラミング言語によっては Gs2WebSocketSession
はサポートされておらず、ペイロードが大きくなるリクエストには Gs2WebSocketSession
が使用できないため、サーバーからのプッシュ通知を必要としない場合は原則として Gs2RestSession
を利用します。
Gs2RestSession Request
引数名 | 説明 |
---|---|
credential | Credentialオブジェクト |
region | 接続先のGS2リージョン |
Gs2WebSocketSession Request
引数名 | 説明 |
---|---|
credential | Credentialオブジェクト |
region | 接続先のGS2リージョン |
初期化
作成した Session オブジェクトは使用する前に接続処理が必要です。
セッションオブジェクトには接続APIが用意されており、そちらを呼び出すことで接続を実行できます。
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
"your client id",
"your client secret"
)
);
session.connect();
var session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region.ApNortheast1
);
yield return session.Open();
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new BasicGs2Credential(
"your client id",
"your client secret"
)
);
await session.connect();
session = core.Gs2RestSession(
core.BasicGs2Credential(
"your client id",
"your client secret"
),
"ap-northeast-1",
)
session.connect()
カオスモード
カオスモードを適用したSDK初期化処理を呼び出すことで、APIリクエストを一定の確率で失敗させることができます。 カオスモードを有効にしたクライアントを使用して開発を進めることで、エラーハンドリングを強固なものにすることができます。
var session = new ChaosGs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
0.1f, // APIリクエスト時に10%の確率でリトライが必要なエラーを発生させる
Region.ApNortheast1
);
yield return session.Open();
マイクロサービスのクライアント
GS2 が提供する各種マイクロサービスごとにクライアントが用意されています。
マイクロサービスのクライアントにも Gs2AccountRestClient
と Gs2AccountWebSocketClient
のように通信プロトコルごとのクライアントが用意されており、それぞれ Gs2RestSession
と Gs2WebSocketSession
を必要とします。
Gs2AccountRestClient Request
引数名 | 説明 |
---|---|
session | Gs2RestSession |
Gs2AccountWebSocketClient Request
引数名 | 説明 |
---|---|
session | Gs2WebSocketSession |
実装例
client := account.Gs2AccountRestClient{
Session: &session,
}
$client = new Gs2AccountRestClient($session);
Gs2AccountRestClient client = new Gs2AccountRestClient(session);
var client = new Gs2AccountRestClient(session);
const client = new Gs2Account.Gs2AccountRestClient(session);
client = account.Gs2AccountRestClient(session)