HttpConfigurable ನ ಬದಲಿಯು ಹಲವು API ಗಳಲ್ಲಿ ಹರಡಿದೆ. HTTP ಪ್ರಾಕ್ಸಿ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಪರಿಶೀಲಿಸುವ ಪ್ಲಗಿನ್‌ಗೆ ಅವುಗಳ ಮೂಲಕ ವಿನಂತಿ ಕಳುಹಿಸುವ ಪ್ಲಗಿನ್‌ಗಿಂತ ಬೇರೆ ಕಾರ್ಯಾಚರಣೆ ಬೇಕು.

ಪ್ರಸ್ತುತ ಬಳಕೆಸ್ಥಳಾಂತರ API
ಆಯ್ದ ಪ್ರಾಕ್ಸಿ ಸಂರಚನೆಯನ್ನು ಓದುವುದುProxySettings.getInstance().getProxyConfiguration()
ತಿಳಿದಿರುವ ರುಜುವಾತುಗಳನ್ನು ಪಡೆಯುವುದು ಅಥವಾ ಬಳಕೆದಾರರನ್ನು ಕೇಳುವುದುProxyAuthentication
ಸಂರಚಿಸಿದ ಸ್ಥಿರ ಎಂಡ್‌ಪಾಯಿಂಟ್‌ಗಾಗಿ ರುಜುವಾತುಗಳನ್ನು ಪಡೆಯುವುದುgetStaticProxyCredentials, ProxyUtils ಮೂಲಕ Java ಗೆ ಒಡ್ಡಲಾದ Kotlin ವಿಸ್ತರಣೆ
ವೇದಿಕೆಯ ಪ್ರಾಕ್ಸಿ ಆಯ್ಕೆಯಿಂದ URL ತೆರೆಯುವುದುHttpConnectionUtils.openConnection(location) ಅಥವಾ openHttpConnection(location)

2024 ರ IntelliJ Platform ಮೂಲಗಳು ಪ್ರತಿನಿಧಿಸುವ ಸ್ಥಳಾಂತರ API ಗಾಗಿ, ಈ ನೆಟ್‌ವರ್ಕ್ ಪ್ರಕಾರಗಳು 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) ಪ್ರತ್ಯೇಕ, ಸಂಭಾವ್ಯ ನಿರ್ಬಂಧಿಸುವ ಕಾರ್ಯಾಚರಣೆಯಾಗಿದೆ. ಕೋಡ್ ಸ್ಥಳಾಂತರಿಸುವಾಗ ಈ ವ್ಯತ್ಯಾಸವನ್ನು ಉಳಿಸಿಕೊಳ್ಳಿ ಮತ್ತು ಪ್ಲಗಿನ್ ಬೆಂಬಲಿಸುವ ಕನಿಷ್ಠ Platform SDK ವಿರುದ್ಧ API ಲಭ್ಯತೆಯನ್ನು ಪರಿಶೀಲಿಸಿ.

ಸಂಬಂಧಿತ ಲೇಖನಗಳು