FastComments.com

FastComments Java SDK


Dit is de officiële Java SDK voor FastComments.

Officiële Java SDK voor de FastComments API

Repository

Bekijk op GitHub


Installatie Internal Link

Maven

Voeg de Repsy-repository toe aan de POM van uw project:

<repositories>
    <repository>
        <id>repsy</id>
        <name>FastComments Maven Repository on Repsy</name>
        <url>https://repo.repsy.io/mvn/winrid/fastcomments</url>
    </repository>
</repositories>

Voeg vervolgens de benodigde afhankelijkheden toe:

<dependencies>
    <!-- API Client -->
    <dependency>
        <groupId>com.fastcomments</groupId>
        <artifactId>client</artifactId>
        <version>0.0.2</version>
    </dependency>

    <!-- Core Library (includes SSO) -->
    <dependency>
        <groupId>com.fastcomments</groupId>
        <artifactId>core</artifactId>
        <version>0.0.2</version>
    </dependency>

    <!-- PubSub Library (for live events) -->
    <dependency>
        <groupId>com.fastcomments</groupId>
        <artifactId>pubsub</artifactId>
        <version>0.0.2</version>
    </dependency>
</dependencies>

Gradle

Voeg de Repsy-repository toe aan uw build.gradle-bestand:

repositories {
    mavenCentral()
    maven {
        url "https://repo.repsy.io/mvn/winrid/fastcomments"
    }
}

dependencies {
    // API Client
    implementation "com.fastcomments:client:0.0.2"

    // Core Library (includes SSO)
    implementation "com.fastcomments:core:0.0.2"

    // PubSub Library (for live events)
    implementation "com.fastcomments:pubsub:0.0.2"
}

Inhoud van de bibliotheek

Deze bibliotheek bevat drie modules. De gegenereerde API-client, de core Java-bibliotheek die handgeschreven hulpprogramma's bevat om het werken met de API te vergemakkelijken, en de pubsub-module die een bibliotheek is om u te abonneren op wijzigingsfeeds.

Publieke versus beveiligde API's

Voor de API-client zijn er twee klassen, DefaultApi en PublicApi. De DefaultApi bevat methoden die uw API-sleutel vereisen, en PublicApi bevat API-aanroepen die rechtstreeks vanuit een browser/mobiel apparaat/etc. kunnen worden gedaan zonder authenticatie.

Snel beginnen Internal Link

Geauthenticeerde API's gebruiken (DefaultApi)

Belangrijk: u moet uw API-sleutel op de ApiClient instellen voordat u geauthenticeerde aanvragen doet. Als u dat niet doet, zullen aanvragen mislukken met een 401-fout.

import com.fastcomments.invoker.ApiClient;
import com.fastcomments.invoker.ApiException;
import com.fastcomments.api.DefaultApi;
import com.fastcomments.model.*;

public class Example {
    public static void main(String[] args) {
        // Maak en configureer de API-client
        ApiClient apiClient = new ApiClient();

        // VEREIST: Stel uw API-sleutel in (verkrijg deze via uw FastComments-dashboard)
        apiClient.setApiKey("YOUR_API_KEY_HERE");

        // Maak de API-instantie met de geconfigureerde client
        DefaultApi api = new DefaultApi(apiClient);

        // Nu kunt u geauthenticeerde API-aanroepen doen
        try {
            // Voorbeeld: voeg een SSO-gebruiker toe
            CreateAPISSOUserData userData = new CreateAPISSOUserData();
            userData.setId("user-123");
            userData.setEmail("user@example.com");
            userData.setDisplayName("John Doe");

            AddSSOUserAPIResponse response = api.addSSOUser("YOUR_TENANT_ID", userData)
                .execute();
            System.out.println("User created: " + response);

        } catch (ApiException e) {
            System.err.println("Error: " + e.getResponseBody());
            // Veelvoorkomende fouten:
            // - 401: API-sleutel ontbreekt of is ongeldig
            // - 400: Validatie van het verzoek is mislukt
        }
    }
}

Openbare API's gebruiken (PublicApi)

Openbare endpoints vereisen geen authenticatie:

import com.fastcomments.api.PublicApi;
import com.fastcomments.invoker.ApiException;

PublicApi publicApi = new PublicApi();

try {
    var response = publicApi.getCommentsPublic("YOUR_TENANT_ID", "page-url-id")
        .execute();
    System.out.println(response);
} catch (ApiException e) {
    e.printStackTrace();
}

Veelvoorkomende problemen

  1. 401 "missing-api-key" fout: Zorg ervoor dat u apiClient.setApiKey("YOUR_KEY") aanroept voordat u de DefaultApi-instantie maakt.
  2. Verkeerde API-klasse: Gebruik DefaultApi voor server-side geauthenticeerde verzoeken, PublicApi voor client-side/openbare verzoeken.
  3. Null API-sleutel: De SDK zal authenticatie stilzwijgend overslaan als de API-sleutel null is, wat leidt tot 401-fouten.

Notities Internal Link

Broadcast-id's

Je zult zien dat je in sommige API-aanroepen een broadcastId moet meegeven. Wanneer je events ontvangt, krijg je deze ID terug, zodat je het event kunt negeren als je van plan bent wijzigingen optimistisch aan de client toe te passen (wat je waarschijnlijk zult willen doen omdat dit de beste gebruikerservaring biedt). Geef hier een UUID mee. De ID moet uniek genoeg zijn om niet twee keer in een browsersessie voor te komen.

Hulp nodig?

Als u problemen ondervindt of vragen hebt over de Java SDK, doe dan het volgende:

Bijdragen

Bijdragen zijn welkom! Bezoek de GitHub repository voor richtlijnen voor bijdragen.