FastComments.com

FastComments Java SDK

Αυτό είναι το επίσημο Java SDK για το FastComments.

Επίσημο Java SDK για το API του FastComments

Αποθετήριο

Προβολή στο GitHub


Εγκατάσταση Internal Link

Maven

Προσθέστε το αποθετήριο Repsy στο POM του έργου σας:

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

Στη συνέχεια προσθέστε τις εξαρτήσεις που χρειάζεστε:

<dependencies>
    <!-- Πελάτης API -->
    <dependency>
        <groupId>com.fastcomments</groupId>
        <artifactId>client</artifactId>
        <version>0.0.2</version>
    </dependency>

    <!-- Βασική Βιβλιοθήκη (περιλαμβάνει SSO) -->
    <dependency>
        <groupId>com.fastcomments</groupId>
        <artifactId>core</artifactId>
        <version>0.0.2</version>
    </dependency>

    <!-- Βιβλιοθήκη PubSub (για live γεγονότα) -->
    <dependency>
        <groupId>com.fastcomments</groupId>
        <artifactId>pubsub</artifactId>
        <version>0.0.2</version>
    </dependency>
</dependencies>

Gradle

Προσθέστε το αποθετήριο Repsy στο αρχείο build.gradle σας:

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

dependencies {
    // Πελάτης API
    implementation "com.fastcomments:client:0.0.2"

    // Βασική Βιβλιοθήκη (περιλαμβάνει SSO)
    implementation "com.fastcomments:core:0.0.2"

    // Βιβλιοθήκη PubSub (για live γεγονότα)
    implementation "com.fastcomments:pubsub:0.0.2"
}

Περιεχόμενα Βιβλιοθήκης

Αυτή η βιβλιοθήκη περιέχει τρεις μονάδες. Ο παραγόμενος πελάτης API, η βασική βιβλιοθήκη Java που περιέχει χειροποίητα βοηθητικά εργαλεία για να γίνει ευκολότερη η εργασία με το API, και το pubsub module που είναι μια βιβλιοθήκη για εγγραφή σε ροές αλλαγών.

Δημόσια έναντι Ασφαλών API

Για τον πελάτη API, υπάρχουν δύο κλάσεις, DefaultApi και PublicApi. Η DefaultApi περιέχει μεθόδους που απαιτούν το API key σας, και η PublicApi περιέχει κλήσεις API που μπορούν να γίνουν απευθείας από ένα πρόγραμμα περιήγησης/κινητή συσκευή/κ.λπ. χωρίς αυθεντικοποίηση.

Γρήγορη έναρξη Internal Link

Χρήση Αυθεντικοποιημένων API (DefaultApi)

Σημαντικό: Πρέπει να ορίσετε το κλειδί API στο ApiClient πριν κάνετε αιτήματα που απαιτούν αυθεντικοποίηση. Αν δεν το κάνετε, τα αιτήματα θα αποτύχουν με σφάλμα 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) {
        // Δημιουργία και ρύθμιση του API client
        ApiClient apiClient = new ApiClient();

        // ΑΠΑΡΑΙΤΗΤΟ: Ορίστε το κλειδί API σας (παίρνετέ το από το πίνακα ελέγχου του FastComments)
        apiClient.setApiKey("YOUR_API_KEY_HERE");

        // Δημιουργήστε το αντικείμενο API με τον ρυθμισμένο client
        DefaultApi api = new DefaultApi(apiClient);

        // Τώρα μπορείτε να κάνετε αιτήματα API με αυθεντικοποίηση
        try {
            // Παράδειγμα: Προσθήκη χρήστη SSO
            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());
            // Συνήθη σφάλματα:
            // - 401: Το κλειδί API λείπει ή είναι άκυρο
            // - 400: Απέτυχε ο έλεγχος εγκυρότητας του αιτήματος
        }
    }
}

Χρήση Δημόσιων API (PublicApi)

Τα δημόσια endpoints δεν απαιτούν αυθεντικοποίηση:

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

Συνήθη Προβλήματα

  1. 401 "missing-api-key" σφάλμα: Βεβαιωθείτε ότι καλείτε apiClient.setApiKey("YOUR_KEY") πριν δημιουργήσετε το instance του DefaultApi.
  2. Λανθασμένη κλάση API: Χρησιμοποιήστε DefaultApi για server-side αιτήματα με αυθεντικοποίηση, PublicApi για client-side/δημόσια αιτήματα.
  3. Κενό κλειδί API (null): Το SDK θα παραλείψει αθόρυβα την αυθεντικοποίηση αν το κλειδί API είναι null, οδηγώντας σε σφάλματα 401.

Σημειώσεις Internal Link

Αναγνωριστικά Broadcast

Θα δείτε ότι πρέπει να περάσετε ένα broadcastId σε μερικές κλήσεις API. Όταν λαμβάνετε γεγονότα, θα λάβετε αυτό το ID πίσω, ώστε να ξέρετε να αγνοήσετε το γεγονός εάν σκοπεύετε να εφαρμόσετε οπτιμιστικά αλλαγές στον πελάτη (που πιθανότατα θα θέλετε να κάνετε καθώς προσφέρει την καλύτερη εμπειρία). Περάστε εδώ ένα UUID. Το ID πρέπει να είναι αρκετά μοναδικό ώστε να μην εμφανιστεί δύο φορές στην ίδια συνεδρία του προγράμματος περιήγησης.

Χρειάζεστε βοήθεια;

Εάν αντιμετωπίσετε οποιοδήποτε ζήτημα ή έχετε ερωτήσεις σχετικά με το Java SDK, παρακαλούμε:

Συνεισφορές

Οι συνεισφορές είναι ευπρόσδεκτες! Παρακαλούμε επισκεφθείτε το αποθετήριο GitHub για οδηγίες συνεισφοράς.