GS2-News SDK for Game Engine API リファレンス

モデル

EzNews

お知らせ記事

必須デフォルト値の制限説明
sectionstring~ 1024文字セクション名
contentstring~ 1024文字コンテンツ名
titlestring~ 1024文字記事見出し
scheduleEventIdstring~ 1024文字GS2-Schedule イベントGRN
timestamplongタイムスタンプ (UNIX時間 単位:ミリ秒)
frontMatterstring~ 1024文字Front Matter

EzSetCookieRequestEntry

お知らせコンテンツにアクセスするために設定の必要なクッキー

必須デフォルト値の制限説明
keystring~ 128文字記事の閲覧に必要な Cookie 設定 のキー値
valuestring~ 1024文字記事の閲覧に必要な Cookie 設定 の値

メソッド

getContentsUrl

お知らせ記事へのアクセスに設定が必要なクッキーのリストを取得

Request

必須デフォルト値の制限説明
namespaceNamestring~ 128文字ネームスペースの名前
accessTokenstring~ 128文字ユーザーID

Result

説明
itemsList<EzSetCookieRequestEntry>お知らせコンテンツにアクセスするために設定の必要なクッキーのリスト
browserUrlstringお知らせコンテンツにアクセスするためのURL
zipUrlstringZIP形式のお知らせコンテンツにアクセスするためのURL (アクセスにCookieの設定は不要)

実装例

    var domain = gs2.News.Namespace(
        namespaceName: "namespace-0001"
    ).Me(
        gameSession: GameSession
    ).News(
    );
    var result = await domain.GetContentsUrlAsync(
    );
    List<EzSetCookieRequestEntry> cookies = new List<EzSetCookieRequestEntry>();
	var items = result.ToList();
	foreach (var item in items)
	{
	  var entry = await item.ModelAsync();
	  cookies.Add(entry);
	}
    var browserUrl = domain.BrowserUrl;
    var zipUrl = domain.ZipUrl;
    var domain = gs2.News.Namespace(
        namespaceName: "namespace-0001"
    ).Me(
        gameSession: GameSession
    ).News(
    );
    var future = domain.GetContentsUrlFuture(
    );
    yield return future;
    if (future.Error != null)
    {
        onError.Invoke(future.Error, null);
        yield break;
    }
    List<EzSetCookieRequestEntry> cookies = new List<EzSetCookieRequestEntry>();
    var result = future.Result;
    var items = result.ToList();
    foreach (var item in items)
    {
        var future2 = item.Model();
	    yield return future2;
	    var entry = future2.Result;
	    cookies.Add(entry);
    }
    var browserUrl = domain.BrowserUrl;
    var zipUrl = domain.ZipUrl;
    const auto Domain = Gs2->News->Namespace(
        "namespace-0001" // namespaceName
    )->Me(
        GameSession
    )->News(
    );
    const auto Future = Domain->GetContentsUrl(
    );
    Future->StartSynchronousTask();
    if (Future->GetTask().IsError())
    {
        return false;
    }
    TArray<EzSetCookieRequestEntryPtr> Cookies;
	const auto It = Future->GetTask().Result();
	foreach (auto Item in It)
	{
        const auto Future2 = Item.Model();
        Future2->StartSynchronousTask();
        if (Future2->GetTask().IsError())
        {
            return Future2->GetTask().Error();
        }
        Cookies.Add(Future->GetTask().Result());
	}
    const auto BrowserUrl = Domain->BrowserUrl;
    const auto ZipUrl = Domain->ZipUrl;

listNewses

お知らせ記事の一覧を取得

Request

必須デフォルト値の制限説明
namespaceNamestring~ 128文字ネームスペースの名前
accessTokenstring~ 128文字ユーザーID

Result

説明
itemsList<EzNews>お知らせ記事のリスト
contentHashstringお知らせ記事データのハッシュ値
templateHashstringテンプレートデータのハッシュ値

実装例

    var domain = gs2.News.Namespace(
        namespaceName: "namespace-0001"
    ).Me(
        gameSession: GameSession
    );
    var items = await domain.NewsesAsync(
    ).ToListAsync();
    var domain = gs2.News.Namespace(
        namespaceName: "namespace-0001"
    ).Me(
        gameSession: GameSession
    );
    var it = domain.Newses(
    );
    List<EzNews> items = new List<EzNews>();
    while (it.HasNext())
    {
        yield return it.Next();
        if (it.Error != null)
        {
            onError.Invoke(it.Error, null);
            break;
        }
        if (it.Current != null)
        {
            items.Add(it.Current);
        }
        else
        {
            break;
        }
    }
    const auto Domain = Gs2->News->Namespace(
        "namespace-0001" // namespaceName
    )->Me(
        GameSession
    );
    const auto It = Domain->Newses(
    );
    TArray<Gs2::UE5::News::Model::FEzNewsPtr> Result;
    for (auto Item : *It)
    {
        if (Item.IsError())
        {
            return false;
        }
        Result.Add(Item.Current());
    }