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 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

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

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"
}

Library Contents

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

Public vs Secured APIs

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

Γρήγορη Εκκίνηση Internal Link

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

Σημαντικό: Πρέπει να ορίσετε το API key σας στο 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 key σας (το πάρετε από τον πίνακα ελέγχου FastComments)
        apiClient.setApiKey("YOUR_API_KEY_HERE");

        // Δημιουργήστε το API instance με τον ρυθμισμένο 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 key is missing or invalid
            // - 400: Request validation failed
        }
    }
}

Χρήση Δημόσιων 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") πριν δημιουργήσετε το DefaultApi instance.
  2. Λανθασμένη κλάση API: Χρησιμοποιήστε DefaultApi για server-side αιτήσεις με αυθεντικοποίηση, PublicApi για client-side/δημόσιες αιτήσεις.
  3. Μηδενικό API key: Το SDK θα παραλείψει σιωπηλά την αυθεντικοποίηση εάν το API key είναι null, οδηγώντας σε σφάλματα 401.

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

Αναγνωριστικά μετάδοσης

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


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

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

Συνεισφορές

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