ଆରମ୍ଭ କରିବା ପୂର୍ବରୁ ASP.NET Core SignalR କ୍ଲାଏଣ୍ଟର ପ୍ରକ୍ସି ସେଟ୍ କରନ୍ତୁ
HttpConnectionOptions ମାଧ୍ୟମରେ ASP.NET Core SignalR କ୍ଲାଏଣ୍ଟ କନଫିଗର କରନ୍ତୁ ଯାହାଫଳରେ ଏହାର ଆଲୋଚନା ଏବଂ ଚୟନିତ ଟ୍ରାନ୍ସପୋର୍ଟ ଉଦ୍ଦିଷ୍ଟ ପଥ ପାଇବ।
ASP.NET Core SignalR କ୍ଲାଏଣ୍ଟ ଆରମ୍ଭ କରିବା ପୂର୍ବରୁ ଏହାର ସଂଯୋଗ ବିକଳ୍ପଗୁଡ଼ିକ କନଫିଗର କରନ୍ତୁ:
var connection = new HubConnectionBuilder()
.WithUrl("https://events.example/hub", options =>
{
options.Proxy = new WebProxy("http://proxy.example:8080");
})
.Build();
ଏହି ଅଂଶ ଆଧୁନିକ SignalR କ୍ଲାଏଣ୍ଟ ଏବଂ System.Net ବ୍ୟବହାର କରେ। ପରିଚାଳନା କରନ୍ତୁ connection ଆପର async ଜୀବନଚକ୍ର ସାରା; hub URL କୁ ଗନ୍ତବ୍ୟ ସ୍ଥାନ ଭାବରେ ରଖନ୍ତୁ। ପ୍ରକ୍ସି କ୍ରେଡେନସିଆଲ କନଫିଗର ନକରି ଅନୁମତିପ୍ରାପ୍ତ ସାର୍ବଜନୀନ hub ପରୀକ୍ଷା ପାଇଁ HTTP ପ୍ରକ୍ସି ତାଲିକା ସମ୍ଭାବ୍ୟ HTTP ମଧ୍ୟସ୍ଥ ଯୋଗାଏ।
| ଟ୍ରାନ୍ସପୋର୍ଟ ସେଟଅପ୍ | ପ୍ରକ୍ସି କେଉଁଠି ଲାଗୁହୁଏ |
|---|---|
| ଡିଫଲ୍ଟ ସଂଯୋଗ ଆଚରଣ | HttpConnectionOptions.Proxy ମଧ୍ୟସ୍ଥ ଚୟନ କରେ; .NET 8 ର ଡିଫଲ୍ଟ WebSocket ଟ୍ରାନ୍ସପୋର୍ଟ ମଧ୍ୟ ଏହାକୁ ClientWebSocketOptions କୁ ଦିଏ |
HttpMessageHandlerFactory | HTTP ପରିଚାଳନା ଅନୁକୂଳ କରେ, WebSocket ସଂଯୋଗ ନୁହେଁ |
ଏକ ପ୍ରଦାନିତ WebSocketFactory | ନିଜର ସୃଷ୍ଟି ଆଚରଣ ରଖେ ଏବଂ ଆବଶ୍ୟକ ପଥ ଲାଗୁ କରିବା ଉଚିତ |
ସଫଳ ଆଲୋଚନା ପ୍ରମାଣ କରେ ନାହିଁ ଯେ ପରବର୍ତ୍ତୀ WebSocket ସୁଡ଼ଙ୍ଗ ଗ୍ରହଣ କରାଯାଇଛି। ଯଦି କଷ୍ଟମ WebSocketFactory .NET ClientWebSocket ବ୍ୟବହାର କରେ, ସଂଯୋଗ କରିବା ପୂର୍ବରୁ ସେହି socket ର ପ୍ରକ୍ସି କନଫିଗର କରନ୍ତୁ. ଶେଷ ସମ୍ପୂର୍ଣ୍ଣ ହୋଇଥିବା ପର୍ଯ୍ୟାୟ ପାଇଁ ଟ୍ରାନ୍ସପୋର୍ଟ ଡାଇଗ୍ନୋଷ୍ଟିକ୍ସ ପଢ଼ନ୍ତୁ ଏବଂ ଜାଣିଶୁଣି ରଖାଯାଇଥିବା ଯେକୌଣସି ଫଲବ୍ୟାକ୍ ଟ୍ରାନ୍ସପୋର୍ଟ ମଧ୍ୟ ଯାଞ୍ଚ କରନ୍ତୁ।
ପୁରୁଣା ASP.NET SignalR ଉଦାହରଣ ଯାହା Connection.Proxy ସେଟ୍ କରେ, ସେଗୁଡ଼ିକ ଅନ୍ୟ ପିଢ଼ିର। HubConnectionBuilder ସହିତ ପ୍ରକ୍ସିକୁ ଅନ୍ୟ WithUrl ଟ୍ରାନ୍ସପୋର୍ଟ ବିକଳ୍ପ ସହିତ ରଖନ୍ତୁ, ଅସମ୍ପର୍କିତ HTTP ଅନୁରୋଧ କନଫିଗର କରିବା ପରିବର୍ତ୍ତେ।