Reactor Netty-ში HttpClient-ის კონფიგურაციის მეთოდები აბრუნებენ მითითებას კონფიგურირებულ კლიენტზე. ამ შედეგის უგულებელყოფისას წინა მითითება ძველ პარამეტრებს ინარჩუნებს.

ეს კოდი ქმნის proxy კონფიგურაციას და შემდეგ კარგავს მას:

HttpClient client = HttpClient.create();
client.proxy(spec -> spec.type(ProxyProvider.Proxy.HTTP)
    .host("proxy.example").port(8080));

სამაგიეროდ, შეინახეთ დაბრუნებული მითითება:

client = client.proxy(spec -> spec.type(ProxyProvider.Proxy.HTTP)
    .host("proxy.example").port(8080));

WebClient webClient = WebClient.builder()
    .clientConnector(new ReactorClientHttpConnector(client))
    .build();

ტიპებია Reactor Netty-ის HttpClient და ProxyProvider, ასევე Spring-ის WebClient და ReactorClientHttpConnector. მეთოდების უშუალოდ HttpClient.create()-დან ჯაჭვურად გამოძახება დაბრუნებული კონფიგურაციის შენარჩუნების კიდევ ერთი გზაა. დაშვებული საჯარო API მოთხოვნებისთვის HTTP proxy სია გთავაზობთ კანდიდატებს მაგალითის ჰოსტისა და პორტისთვის.

იგივე შემოწმება მოქმედებს პასუხის ტაიმაუტების ან გადამისამართების დამუშავების დაყენებისას. წაიკითხეთ მეთოდის დაბრუნების კონტრაქტი იმის ნაცვლად, რომ ჩათვალოთ, თითქოს setter საწყის ობიექტს ცვლის.

ასევე თვალი ადევნეთ, რომელი მითითება აღწევს connector-ამდე. connector-ის შექმნის შემდეგ ლოკალური ცვლადის ხელახლა მინიჭება არ ცვლის იმ კლიენტს, რომელიც connector-მა უკვე მიიღო.

დაკავშირებული სტატიები