Apache HttpClient 4.2: ವಿನಂತಿ ಸಂದರ್ಭದಲ್ಲಿ ಪ್ರಾಕ್ಸಿ AuthCache ಇರಿಸಿ
HttpClient 4.2 ಪ್ರಾಕ್ಸಿಯ Basic-auth ಕ್ಯಾಶ್ ಅನ್ನು ಮುಂದಿನ ವಿನಂತಿಗಳು ಬಳಸುವ ಅದೇ ಕಾರ್ಯಗತಗೊಳಿಸುವ ಸಂದರ್ಭದಲ್ಲಿ ಇರಿಸಿ.
ಹಳೆಯ HttpClient 4.2.2 ಅಪ್ಲಿಕೇಶನ್ನಲ್ಲಿ ರುಜುವಾತು ಪೂರೈಕೆದಾರ ಮತ್ತು ದೃಢೀಕರಣ ಕ್ಯಾಶ್ ಬೇರೆ ಬೇರೆ ಕೆಲಸ ಮಾಡುತ್ತವೆ. ಪೂರೈಕೆದಾರ ಖಾತೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ; ಕ್ಯಾಶ್ ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಮೊದಲೇ ಸಂರಚಿಸಿದ ದೃಢೀಕರಣ ಯೋಜನೆಯು ಮುಂದಿನ ಸವಾಲು ಬರುವ ಮೊದಲು ಭಾಗವಹಿಸಲು ಅನುಮತಿಸುತ್ತದೆ.
ಹಳೆಯ ಪ್ರಾಕ್ಸಿ-ನಿರ್ದಿಷ್ಟ BasicScheme ನಿರ್ಮಾಪಕಕ್ಕೆ, ಹಸ್ತಾಂತರಣ ಹೀಗೆ ಕಾಣುತ್ತದೆ:
AuthCache cache = new BasicAuthCache();
cache.put(proxy, new BasicScheme(ChallengeState.PROXY));
HttpContext context = new BasicHttpContext();
context.setAttribute(ClientContext.AUTH_CACHE, cache);
HttpResponse response = client.execute(request, context);ಈ ತುಣುಕು client ಬಳಿ ಈಗಾಗಲೇ ಹೊಂದಿಕೆಯಾಗುವ ಪ್ರಾಕ್ಸಿ ಮಾರ್ಗ ಮತ್ತು ರುಜುವಾತು ಪೂರೈಕೆದಾರ ಇದೆ ಎಂದು ಊಹಿಸುತ್ತದೆ. proxy ಅದರ HttpHost, ಮತ್ತು request ನಿಜವಾದ ಕಾರ್ಯಾಚರಣೆ. ಕ್ಯಾಶ್ ಕೀ ಆ ಮಧ್ಯವರ್ತಿಯನ್ನು ವಿವರಿಸಬೇಕು, ಗಮ್ಯವಾಹಿನಿ ತಾಣವನ್ನಲ್ಲ.
ತುಂಬಿದ ಸಂದರ್ಭವನ್ನು execute ಗೆ ರವಾನಿಸಿ. ಅದನ್ನು ನಿರ್ಮಿಸಿ ನಂತರ ಬೇರೆ ಸಂದರ್ಭವನ್ನು ಸೃಷ್ಟಿಸುವ ಓವರ್ಲೋಡ್ ಬಳಸಿದರೆ ಕ್ಯಾಶ್ ವಿನಿಮಯದ ಹೊರಗೆ ಉಳಿಯುತ್ತದೆ. ಅದೇ ದೃಢೀಕರಣ ಸ್ಥಿತಿಯನ್ನು ಹಂಚಿಕೊಳ್ಳಬೇಕಾದ ಮುಂದಿನ ಕಾರ್ಯಾಚರಣೆಗಳಿಗೆ, ಪ್ರತಿ ಬಾರಿ ಖಾಲಿ ಸಂದರ್ಭವನ್ನು ಮತ್ತೆ ನಿರ್ಮಿಸುವ ಬದಲು ಸೂಕ್ತವಾದ ಸಂದರ್ಭವನ್ನು ಇರಿಸಿಕೊಳ್ಳಿ.
ಸ್ಪಷ್ಟ PROXY ಸ್ಥಿತಿ ಈ ಹಳೆಯ API ಗೆ ಸೇರಿದೆ. TARGET ಗಮ್ಯದ ದೃಢೀಕರಣಕ್ಕೆ ಸಂಬಂಧಿಸಿದೆ. ಹೊಸ HttpClient ಪೀಳಿಗೆಗಳು ಪ್ಯಾಕೇಜುಗಳನ್ನು ಮತ್ತು ದೃಢೀಕರಣ API ಗಳನ್ನು ಬದಲಾಯಿಸಿವೆ, ಆದ್ದರಿಂದ ಇದನ್ನು ಇರುವ 4.2 ಕೋಡ್ಗೆ ನಿರ್ವಹಣಾ ಮಾರ್ಗದರ್ಶಿಯಾಗಿ ಬಳಸಿ, ಹೊಸ client ಗೆ ಪಾಕವಿಧಾನವಾಗಿ ಅಲ್ಲ.
ಸಾಮಾನ್ಯ ಸವಾಲು-ಚಾಲಿತ ವಿನಿಮಯ ಇನ್ನೂ ಸರಿಯಾಗಿರಬಹುದು. ತಿಳಿದಿರುವ ಮತ್ತು ಉದ್ದೇಶಿಸಿದ ಪ್ರಾಕ್ಸಿಗೆ ಮಾತ್ರ Basic ದೃಢೀಕರಣ ಬಿತ್ತರಿಸಿ, ಮತ್ತು ಮುಂದಿನ ಕಾರ್ಯಾಚರಣೆಗೆ ಅದರ ಸಂಪರ್ಕ ಬೇಕಾಗುವ ಮೊದಲು ಪ್ರತಿ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಬಳಸಿ ಅಥವಾ ಬಿಡುಗಡೆ ಮಾಡಿ. ಉಪಯುಕ್ತ ಫಲಿತಾಂಶವೆಂದರೆ ವಿನಂತಿಯನ್ನು ನಿಜವಾಗಿ ಕಳುಹಿಸುವ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಗೆ ಜೋಡಿಸಿದ ಖಾತೆ ಮತ್ತು ಕ್ಯಾಶ್ ಮಾಡಿದ ಯೋಜನೆ.