HttpClient 5 ਨਾਲ Spring 6 RestTemplate ਪ੍ਰੌਕਸੀ ਸੈਟਿੰਗਾਂ
ਕਨਫਿਗਰ ਕੀਤਾ ਰਸਤਾ ਅਤੇ ਖਾਤਾ ਤਾਂ ਹੀ ਮਾਇਨੇ ਰੱਖਦੇ ਹਨ ਜਦੋਂ ਅਸਫਲ RestTemplate ਉਨ੍ਹਾਂ ਨਾਲ ਮੇਲ ਖਾਂਦਾ request factory ਵਰਤਦਾ ਹੈ।
ਸਰਗਰਮ ਕਲਾਇੰਟ ਇੰਸਟੈਂਸ ਨੂੰ ਪਿੱਛੇ ਵੱਲ ਟਰੇਸ ਕਰੋ: RestTemplate → request factory → ਅਧੀਨ HTTP ਕਲਾਇੰਟ → ਪ੍ਰੌਕਸੀ ਰਸਤਾ/ਖਾਤਾ। ਕਿਸੇ ਹੋਰ inject ਕੀਤੇ bean ਦੇ ਕੋਲ ਕਨਫਿਗਰ ਕੀਤਾ helper ਉਸ bean ਦੀਆਂ ਕਾਲਾਂ ਨਹੀਂ ਬਦਲਦਾ।
ਬਣਾਉਣ ਦਾ ਕ੍ਰਮ ਇਹ ਹੈ:
- ਅਧੀਨ ਕਲਾਇੰਟ ਦਾ ਪ੍ਰੌਕਸੀ ਰਸਤਾ ਅਤੇ endpoint-ਸੀਮਿਤ ਪ੍ਰਮਾਣ-ਪੱਤਰ ਸੈਟ ਕਰੋ।
- ਉਹ ਕਲਾਇੰਟ ਅਨੁਕੂਲ HTTP-components request factory ਨੂੰ ਦਿਓ।
- ਕਾਰਵਾਈ ਕਰਨ ਵਾਲੇ RestTemplate ਵਿੱਚ ਉਹ factory ਵਰਤੋ।
Spring Framework 6 ਦੇ factory ਲਈ Apache HttpComponents 5.1 ਜਾਂ ਨਵਾਂ ਲੋੜੀਂਦਾ ਹੈ। HttpClient 4 ਦੇ builder, ਪ੍ਰਮਾਣ-ਪੱਤਰ ਅਤੇ constructor ਕਿਸੇ ਹੋਰ ਪੀੜ੍ਹੀ ਦੇ ਹਨ। factory ਬਣਾਉਣ ਦੀ ਗਲਤੀ 407 ਵੱਲੋਂ ਦਰਸਾਏ ਪਿੱਛਲੇ ਨੈੱਟਵਰਕ/ਪ੍ਰਮਾਣਿਕਤਾ ਰਸਤੇ ਤੋਂ ਪਹਿਲਾਂ ਆਉਂਦੀ ਹੈ।
Proxy-Authorization ਜੋੜਨ ਵਾਲਾ ਆਮ request interceptor ਪਹਿਲਾਂ ਵਾਲੇ HTTPS CONNECT ਵਟਾਂਦਰੇ ਨੂੰ ਖੁੰਝ ਸਕਦਾ ਹੈ। ਪ੍ਰੌਕਸੀ ਅਤੇ ਮੰਜ਼ਿਲ ਖਾਤਿਆਂ ਨੂੰ ਉਨ੍ਹਾਂ ਦੇ ਸੰਬੰਧਿਤ ਸਮਰਥਿਤ transport/auth ਇੰਟਰਫੇਸਾਂ ਉੱਤੇ ਰੱਖੋ ਅਤੇ TLS ਜਾਂਚ ਬਣਾਈ ਰੱਖੋ।
ਰਿਪੋਰਟ ਲਈ Spring/ਕਲਾਇੰਟ ਪੀੜ੍ਹੀ, ਸਰਗਰਮ bean/factory, ਪ੍ਰੌਕਸੀ ਅਤੇ ਅੰਤਿਮ ਗਲਤੀ ਪੜਾਅ ਭੇਤਾਂ ਤੋਂ ਬਿਨਾਂ ਰੱਖੋ।