FastComments.com

FastComments Java SDK

Ovo je službeni Java SDK za FastComments.

Službeni Java SDK za FastComments API

Repozitorij

Pogledajte na GitHubu


Instalacija Internal Link

Maven

Dodajte Repsy repozitorij u POM vašeg projekta:

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

Zatim dodajte potrebne ovisnosti:

<dependencies>
    <!-- Klijent API-ja -->
    <dependency>
        <groupId>com.fastcomments</groupId>
        <artifactId>client</artifactId>
        <version>1.3.2</version>
    </dependency>

    <!-- Core knjižnica (uključuje SSO) -->
    <dependency>
        <groupId>com.fastcomments</groupId>
        <artifactId>core</artifactId>
        <version>1.3.2</version>
    </dependency>

    <!-- PubSub knjižnica (za događaje uživo) -->
    <dependency>
        <groupId>com.fastcomments</groupId>
        <artifactId>pubsub</artifactId>
        <version>1.3.2</version>
    </dependency>
</dependencies>

Gradle

Dodajte Repsy repozitorij u datoteku build.gradle:

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

dependencies {
    // Klijent API-ja
    implementation "com.fastcomments:client:1.3.2"

    // Core knjižnica (uključuje SSO)
    implementation "com.fastcomments:core:1.3.2"

    // PubSub knjižnica (za događaje uživo)
    implementation "com.fastcomments:pubsub:1.3.2"
}

Sadržaj knjižnice

Ova knjižnica sadrži tri modula. Generirani API klijent, osnovna Java knjižnica koja sadrži ručno napisane pomoćne funkcije za olakšavanje rada s API-jem, i modul pubsub koji je knjižnica za pretplatu na feed promjena.

Javni vs Zaštićeni API-ji

Za API klijent postoje dvije klase, DefaultApi i PublicApi. DefaultApi sadrži metode koje zahtijevaju vaš API ključ, a PublicApi sadrži API pozive koji se mogu izvršiti izravno iz preglednika/mobilnog uređaja/itd. bez autentifikacije.

Brzi početak Internal Link

Korištenje autentificiranih API-ja (DefaultApi)

Važno: Morate postaviti svoj API ključ na ApiClient prije slanja autentificiranih zahtjeva. Ako to ne učinite, zahtjevi će vratiti grešku 401.

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) {
        // Kreirajte i konfigurirajte API klijent
        ApiClient apiClient = new ApiClient();

        // OBAVEZNO: Postavite svoj API ključ (dohvatite ga s FastComments nadzorne ploče)
        apiClient.setApiKey("YOUR_API_KEY_HERE");

        // Kreirajte instancu API-ja s konfiguriranim klijentom
        DefaultApi api = new DefaultApi(apiClient);

        // Sada možete izvoditi autentificirane API pozive
        try {
            // Primjer: Dodavanje SSO korisnika
            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());
            // Uobičajene pogreške:
            // - 401: API ključ nedostaje ili je neispravan
            // - 400: Provjera valjanosti zahtjeva nije uspjela
        }
    }
}

Korištenje javnih API-ja (PublicApi)

Javni endpointi ne zahtijevaju autentifikaciju:

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();
}

Uobičajeni problemi

  1. 401 "missing-api-key" error: Pobrinite se da pozovete apiClient.setApiKey("YOUR_KEY") prije kreiranja instance DefaultApi.
  2. Pogrešna API klasa: Koristite DefaultApi za poslužiteljske autentificirane zahtjeve, PublicApi za klijentske/javne zahtjeve.
  3. Null API ključ: SDK će tiho preskočiti autentifikaciju ako je API ključ null, što dovodi do 401 pogrešaka.

Bilješke Internal Link

Broadcast identifikatori

Vidjet ćete da trebate proslijediti broadcastId u nekim API pozivima. Kada primite događaje, dobit ćete taj ID natrag, tako da znate zanemariti događaj ako planirate optimistično primijeniti promjene na klijentu (što ćete vjerojatno htjeti učiniti jer pruža najbolje iskustvo). Ovdje proslijedite UUID. ID bi trebao biti dovoljno jedinstven da se ne pojavi dva puta u jednoj sesiji preglednika.


Trebate pomoć?

Ako naiđete na bilo kakve probleme ili imate pitanja o Java SDK-u, molimo:

Doprinosi

Doprinosi su dobrodošli! Posjetite GitHub repozitorij za smjernice za doprinos.