Επιλέξτε πακέτο
Τα επίσημα SDK ανοιχτού κώδικα καλούν το ίδιο API V2 που περιγράφεται σε αυτούς τους οδηγούς. Η έκδοση 2.x κάθε πακέτου χρησιμοποιεί το API V2. Για νέα έργα εγκαταστήστε την έκδοση 2.x.
| Γλώσσα | Πακέτο | Εγκατάσταση | Απαιτήσεις |
|---|---|---|---|
| Python | genderapi (PyPI) | pip install "genderapi>=2,<3" | Python 3.9+ |
| JavaScript / TypeScript | genderapi (npm) | npm install genderapi@2 | Node.js 18+ |
| PHP | genderapi/genderapi (Packagist) | composer require "genderapi/genderapi:^2.0" | PHP 8.1+ |
| Ruby | genderapi (RubyGems) | gem install genderapi -v "~> 2.0" | Ruby 3.0+ |
| Java | com.github.GenderAPI:genderapi-java (JitPack) | implementation 'com.github.GenderAPI:genderapi-java:v2.0.0' | Java 11+ |
| R | genderapi (GitHub) | remotes::install_github("GenderAPI/genderapi-R", ref = "v2.0.0") | R 4.1+ |
| C# / .NET | GenderAPI (NuGet) | dotnet add package GenderAPI | .NET 8 ή .NET Standard 2.0 |
Σημειώσεις για τα μητρώα πακέτων
- Java: προσθέστε το https://jitpack.io στα αποθετήριά σας. Η ίδια έκδοση δημοσιεύεται επίσης στο GitHub Packages ως io.genderapi:genderapi, κάτι που απαιτεί token GitHub με read:packages.
- R: Το CRAN εξακολουθεί να διαθέτει το πακέτο 1.x όσο η έκδοση 2.0.0 βρίσκεται υπό αξιολόγηση από το CRAN. Εγκαταστήστε την 2.0.0 από το tag του GitHub μέχρι να τη δημοσιεύσει το CRAN.
- JavaScript: Το πακέτο προορίζεται για περιβάλλοντα εκτέλεσης στην πλευρά του διακομιστή. Μην το χρησιμοποιείτε σε κώδικα του προγράμματος περιήγησης, γιατί θα εξέθετε το κλειδί API σας.
Κοινή συμπεριφορά
- Κάθε πελάτης διαβάζει το κλειδί API από το GENDERAPI_API_KEY ή το δέχεται στον constructor. Κρατήστε το κλειδί στον διακομιστή σας.
- Χωρίς κλειδί API, τα αιτήματα χρησιμοποιούν την κοινή δοκιμαστική πρόσβαση IP: 10 πιστώσεις ανά διεύθυνση IP ανά 24 ώρες.
- Η εισαγωγή ενός πακέτου ή η δημιουργία ενός πελάτη δεν στέλνει κανένα αίτημα. Κάθε κλήση μεθόδου στέλνει ακριβώς ένα αίτημα.
- Κανένα SDK δεν επαναλαμβάνει αυτόματα ένα αίτημα. Μια επανάληψη είναι νέα λειτουργία που χρεώνεται κανονικά, γι' αυτό ελέγξτε πρώτα το σφάλμα και την κατάσταση χρέωσης.
- Τα SDK δεν ακολουθούν ανακατευθύνσεις και το προεπιλεγμένο χρονικό όριο είναι 10 δευτερόλεπτα.
- Ένα άγνωστο αποτέλεσμα είναι επιτυχής απόκριση: το gender είναι null και το αίτημα χρεώνεται κανονικά.
- Τα σφάλματα περιλαμβάνουν την κατάσταση HTTP, τον κωδικό σφάλματος, το αναγνωριστικό αιτήματος και, όταν υπάρχει, την τιμή του Retry-After.
Παραδείγματα γρήγορης εκκίνησης
Κάθε παράδειγμα στέλνει μία πρόβλεψη ονόματος και κοστίζει 1 πίστωση. Ορίστε πρώτα το GENDERAPI_API_KEY στο περιβάλλον του διακομιστή. Το README κάθε αποθετηρίου καλύπτει αιτήματα παρτίδας, ελέγχους χρήσης και χειρισμό σφαλμάτων.
from genderapi import GenderAPI
client = GenderAPI() # reads GENDERAPI_API_KEY
result = client.name("Alice", country="US")
print(result.data.gender, result.data.result_status)
print(result.meta.usage.charged_credits)import { GenderAPI } from "genderapi";
const client = new GenderAPI(); // reads GENDERAPI_API_KEY
const { data, meta } = await client.name("Andrea", { country: "IT" });
console.log(data.gender, data.result_status, meta.usage.charged_credits);<?php
require __DIR__ . '/vendor/autoload.php';
use GenderApi\Client;
$client = new Client(); // reads GENDERAPI_API_KEY
$result = $client->name('Γιώργος', country: 'GR');
echo $result->data->gender ?? 'unknown', ' ', $result->meta->usage->chargedCredits, "\n";require "genderapi"
client = GenderAPI::Client.new # reads ENV["GENDERAPI_API_KEY"]
result = client.name("Andrea", country: "IT")
puts result.data.gender, result.usage.charged_creditsimport io.genderapi.GenderApiClient;
import io.genderapi.model.GenderResponse;
GenderApiClient client = new GenderApiClient(); // reads GENDERAPI_API_KEY
GenderResponse response = client.name("Andrea", "IT");
System.out.println(response.getData().getGender());
System.out.println(response.getMeta().getUsage().getChargedCredits());library(genderapi)
res <- genderapi_name("Μαρία", country = "GR") # reads GENDERAPI_API_KEY
res$data$gender
res$meta$usage$charged_creditsusing GenderApi;
using var client = new GenderApiClient(); // reads GENDERAPI_API_KEY
GenderResponse res = await client.NameAsync("Alice", country: "US");
Console.WriteLine(res.Data!.Gender ?? "unknown");
Console.WriteLine(res.Meta!.Usage!.ChargedCredits);Διατηρήστε μια ενσωμάτωση V1 στην έκδοση 1.x
Τα πακέτα της έκδοσης 1.x παραμένουν διαθέσιμα για τις υπάρχουσες ενσωματώσεις V1 και δεν έχουν χαρακτηριστεί παρωχημένα. Κλειδώστε την κύρια έκδοση ώστε μια ενημέρωση να μην εγκαταστήσει την 2.x και, στη συνέχεια, μεταφέρετε κάθε ενσωμάτωση όταν είστε έτοιμοι.
| Γλώσσα | Εγκατάσταση 1.x |
|---|---|
| Python | pip install "genderapi<2" |
| JavaScript / TypeScript | npm install genderapi@1 |
| PHP | composer require "genderapi/genderapi:^1.0" |
| Ruby | gem install genderapi -v "~> 1.0" |
| Java | implementation 'com.github.GenderAPI:genderapi-java:v1.0.3' |
| R | remotes::install_version("genderapi", "1.0.3") |
Πηγαίος κώδικας και αναφορές προβλημάτων
Κάθε SDK είναι ανοιχτού κώδικα. Αναφέρετε σφάλματα ή ζητήστε νέες λειτουργίες στο αντίστοιχο αποθετήριο GitHub.