Πώς να εγγραφείτε στα ιδιωτικά feeds WebSocket της Kraken

Τελευταία ενημέρωση: 1 Απριλίου 2025

Ενώ τα feeds δεδομένων αγοράς του WebSocket είναι δημόσια διαθέσιμα, τα ιδιωτικά feeds του WebSocket που έχουν πρόσβαση σε λογαριασμό Kraken πρέπει να προστατεύονται μέσω ασφαλούς ελέγχου ταυτότητας.

Το REST API μας παρέχει ήδη έναν ασφαλή μηχανισμό ελέγχου ταυτότητας χρησιμοποιώντας κλειδιά API και κρυπτογραφικούς αλγόριθμους κατακερματισμού, επομένως ο έλεγχος ταυτότητας WebSocket εκμεταλλεύεται αυτό για να παρέχει το ίδιο υψηλό επίπεδο ασφάλειας.

Για να εγγραφείτε σε ένα ιδιωτικό feed WebSocket, ο πελάτης API πρέπει πρώτα να ζητήσει ένα διακριτικό ελέγχου ταυτότητας μέσω του REST API και στη συνέχεια να παράσχει το ίδιο διακριτικό κατά την εγγραφή στα ιδιωτικά feeds:

API_Flowchart_10072020.png

Οδηγίες βήμα προς βήμα

Τα ιδιωτικά feeds WebSocket μπορούν να προσπελαστούν χρησιμοποιώντας την ακόλουθη διαδικασία:

1. Δημιουργήστε ένα κλειδί API μέσω του αναπτυσσόμενου μενού Ονόματος Προφίλ στην επάνω δεξιά γωνία -> Ασφάλεια -> API της διαχείρισης λογαριασμού και βεβαιωθείτε ότι έχετε ενεργοποιήσει την άδεια Πρόσβαση στο API WebSockets:

General_SecurityDropdown_04272021.png
API_KeyPermissionsCheckboxes_03122021.png

2. Καλέστε το τελικό σημείο GetWebSocketsToken του REST API για να ανακτήσετε ένα νέο διακριτικό ελέγχου ταυτότητας WebSocket, το οποίο θα μοιάζει με το ακόλουθο:

WOg6IVQ5RfogMzkhH25WOg6IVQ5RqhP+U3ZprQVnh7f

Τα διακριτικά ελέγχου ταυτότητας έχουν αρχική ισχύ 15 λεπτών (900 δευτερόλεπτα), αλλά μόλις ένα διακριτικό χρησιμοποιηθεί για την εγγραφή σε ένα ιδιωτικό feed, το διακριτικό θα παραμείνει έγκυρο όσο η συνδρομή παραμένει ενεργή.

Το παράδειγμα Python 3 μας δείχνει πώς να ανακτήσετε ένα διακριτικό ελέγχου ταυτότητας WebSocket από το τελικό σημείο GetWebSocketsToken του REST API με λίγες μόνο γραμμές κώδικα.

3. Συνδεθείτε στο WebSocket API μέσω της διεύθυνσης URL ιδιωτικού feed wss://ws-auth.kraken.com/ και εγγραφείτε είτε στο feed openOrders, είτε στο feed ownTrades, είτε και στα δύο feeds.

Το διακριτικό ελέγχου ταυτότητας WebSocket πρέπει να παρέχεται στο μήνυμα συνδρομής ως η τιμή του πεδίου διακριτικού:

  • {"event":"subscribe", "subscription":{"name":"openOrders", "token":"WOg6IVQ5RfogMzkhH25WOg6IVQ5RqhP+U3ZprQVnh7f"}}

  • {"event":"subscribe", "subscription":{"name":"ownTrades", "token":"WOg6IVQ5RfogMzkhH25WOg6IVQ5RqhP+U3ZprQVnh7f"}}

Γνωστά ζητήματα

  • EService:Unavailable - Εάν λάβετε ένα σφάλμα μη διαθεσιμότητας υπηρεσίας

    κατά την εγγραφή σε ένα ιδιωτικό feed, θα πρέπει να δοκιμάσετε ξανά την εγγραφή. Το σφάλμα μη διαθεσιμότητας υπηρεσίας είναι μόνο προσωρινό, οπότε μια επακόλουθη προσπάθεια εγγραφής θα πρέπει να είναι επιτυχής.

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