Αντικατάσταση του HttpConfigurable σε πρόσθετο IntelliJ
Διαβάστε τη διαμόρφωση του διαμεσολαβητή, λάβετε διαπιστευτήρια τελικού σημείου και ανοίξτε συνδέσεις με επίγνωση της πλατφόρμας μέσω των API διαμεσολαβητή του IntelliJ.
Η αντικατάσταση του HttpConfigurable είναι κατανεμημένη σε πολλά API. Ένα πρόσθετο που εξετάζει τις ρυθμίσεις του διαμεσολαβητή HTTP χρειάζεται διαφορετική λειτουργία από ένα πρόσθετο που στέλνει αίτημα μέσω αυτών.
| Υπάρχουσα χρήση | API μετεγκατάστασης |
|---|---|
| Ανάγνωση της επιλεγμένης διαμόρφωσης διαμεσολαβητή | ProxySettings.getInstance().getProxyConfiguration() |
| Ανάκτηση γνωστών διαπιστευτηρίων ή ερώτηση στον χρήστη | ProxyAuthentication |
| Λήψη διαπιστευτηρίων για το διαμορφωμένο στατικό τελικό σημείο | getStaticProxyCredentials, επέκταση Kotlin που εκτίθεται στη Java μέσω του ProxyUtils |
| Άνοιγμα URL με την επιλογή διαμεσολαβητή της πλατφόρμας | HttpConnectionUtils.openConnection(location) ή openHttpConnection(location) |
Για το API μετεγκατάστασης που αντιπροσωπεύουν οι πηγές του IntelliJ Platform του 2024, αυτοί οι τύποι δικτύου βρίσκονται στο com.intellij.util.net. Για παράδειγμα, η Kotlin μπορεί να εξετάσει τη διαμόρφωση και να αναζητήσει γνωστά διαπιστευτήρια στατικού διαμεσολαβητή χωρίς προτροπή:
import com.intellij.util.net.ProxyAuthentication
import com.intellij.util.net.ProxyCredentialProvider
import com.intellij.util.net.ProxySettings
import com.intellij.util.net.getStaticProxyCredentials
val settings = ProxySettings.getInstance()
val configuration = settings.getProxyConfiguration()
val credentials = settings.getStaticProxyCredentials(
ProxyCredentialProvider(
ProxyAuthentication.getInstance()::getKnownAuthentication
)
)
Το βοηθητικό απαιτεί ένα ProxyCredentialProvider· η αναφορά μεθόδου προσαρμόζει την υπηρεσία ελέγχου ταυτότητας σε αυτή τη διεπαφή. Τα διαπιστευτήρια αναζητούνται με βάση τον κεντρικό υπολογιστή και τη θύρα του διαμορφωμένου διαμεσολαβητή. Ένα αποτέλεσμα null μπορεί να σημαίνει ότι η διαμόρφωση δεν είναι στατική, άρα δεν αποδεικνύει ότι διαμεσολαβητής επιλεγμένος μέσω PAC δεν χρειάζεται έλεγχο ταυτότητας.
Όταν η πραγματική εργασία είναι η αποστολή αίτησης HTTP, χρησιμοποιήστε το βοηθητικό σύνδεσης της πλατφόρμας αντί να ανακατασκευάσετε τη δρομολόγηση από τα πεδία κεντρικού υπολογιστή και θύρας. Συμβουλεύεται τον επιλογέα διαμεσολαβητή της πλατφόρμας για το URL προορισμού. Η μετατροπή στατικής διαμόρφωσης με το asJavaProxy() δεν σέβεται τη λίστα εξαιρέσεών της και δεν υλοποιεί επιλογή PAC.
Αν απαιτείται διαδραστικός έλεγχος ταυτότητας, το ProxyAuthentication.getPromptedAuthentication(prompt, host, port) είναι ξεχωριστή, δυνητικά αποκλειστική λειτουργία. Διατηρήστε αυτή τη διάκριση κατά τη μετεγκατάσταση κώδικα και ελέγξτε τη διαθεσιμότητα του API ως προς το ελάχιστο υποστηριζόμενο Platform SDK του πρόσθετου.