ASP.NET Core ପ୍ରକ୍ସି ସେଟିଂସ: launchSettings.json ବନାମ ଉତ୍ପାଦନ
ବିକାଶ ଲଞ୍ଚ-ପ୍ରୋଫାଇଲର ପ୍ରକ୍ସି ମୂଲ୍ୟଗୁଡ଼ିକୁ ନିୟୋଜିତ ASP.NET Core ପ୍ରକ୍ରିୟା ବ୍ୟବହାର କରୁଥିବା ପରିବେଶ ଓ HTTP ହ୍ୟାଣ୍ଡଲରରୁ ଅଲଗା କରନ୍ତୁ।
launchSettings.json ରେ ଥିବା ପ୍ରକ୍ସି ମୂଲ୍ୟ ଏକ ବିକାଶ ଲଞ୍ଚ ପ୍ରୋଫାଇଲର। ଆପ୍ଲିକେସନ ପ୍ରକାଶ କଲେ ସେ ପ୍ରୋଫାଇଲ IIS ୱାର୍କର, ସେବା କିମ୍ବା କଣ୍ଟେନରର ପରିବେଶ ହୁଏ ନାହିଁ।
ନିୟୋଜିତ ପରିବେଶରେ ବିଫଳତା ପାଇଁ, ଯେଉଁ ପ୍ରକ୍ରିୟା ପ୍ରକୃତରେ ଆପ୍ଲିକେସନ ଆରମ୍ଭ କରେ ତାହା ଯାଞ୍ଚ କରନ୍ତୁ। ଏହାର ପରିବେଶ, ଖାତା ଓ HTTP ହ୍ୟାଣ୍ଡଲର କେଉଁ ପ୍ରକ୍ସି ଇନପୁଟ ଉପଲବ୍ଧ ତାହା ନିର୍ଣ୍ଣୟ କରେ।
| କେଉଁଠି କାମ କରେ | ନିୟୋଜନ ପରେ କଣ ତୁଳନା କରିବେ |
|---|---|
| IDE ଲଞ୍ଚ ପ୍ରୋଫାଇଲ | ହୋଷ୍ଟ ପ୍ରକ୍ରିୟାର ପରିବେଶ |
| ଇଣ୍ଟରାକ୍ଟିଭ ଉପଭୋକ୍ତା ସେସନ | ସେବା ଖାତା ଓ ଏହାର ପ୍ରକ୍ସି ସେଟିଂସ |
| ହାତରେ ତିଆରି HTTP କ୍ଲାଏଣ୍ଟ | ଆପ୍ଲିକେସନର ଇଞ୍ଜେକ୍ଟ କରାଯାଇଥିବା କ୍ଲାଏଣ୍ଟ ବ୍ୟବହାର କରୁଥିବା ହ୍ୟାଣ୍ଡଲର |
ଆଧୁନିକ HttpClient ର ଡିଫଲ୍ଟ ପ୍ରକ୍ସି ଆରମ୍ଭରେ ପ୍ଲାଟଫର୍ମ-ନିର୍ଦ୍ଦିଷ୍ଟ ପରିବେଶ ଓ ସିଷ୍ଟମ-କନଫିଗରେସନ ନିୟମ ଅଛି। ସ୍ପଷ୍ଟ ଭାବରେ କନଫିଗର କରାଯାଇଥିବା ହ୍ୟାଣ୍ଡଲର ସେହି ଡିଫଲ୍ଟଗୁଡ଼ିକୁ ଅତିକ୍ରମ କରିପାରେ। IHttpClientFactory ସହିତ, ନାମିତ କ୍ଲାଏଣ୍ଟର ପ୍ରାଥମିକ ହ୍ୟାଣ୍ଡଲର ପଞ୍ଜୀକରଣ ଓ କଲ ସ୍ଥାନରେ ମିଳିଥିବା ନାମ ଯାଞ୍ଚ କରନ୍ତୁ। କନଫିଗରେସନ ଫାଇଲ ଅବହେଳିତ ହୋଇଛି ବୋଲି ସିଦ୍ଧାନ୍ତ ନେବା ପୂର୍ବରୁ ଉଭୟ ଇନପୁଟ ଯାଞ୍ଚ କରନ୍ତୁ।
.NET Framework ର ପୁରୁଣା system.net/defaultProxy ଉଦାହରଣ ଅନ୍ୟ ଏକ କନଫିଗରେସନ ମଡେଲ ବର୍ଣ୍ଣନା କରେ। ସେ ଅଂଶକୁ ଆଧୁନିକ ନିୟୋଜନ ଫାଇଲରେ ଲଗାନ୍ତୁ ନାହିଁ ଓ ପ୍ରତ୍ୟେକ .NET HTTP କାର୍ଯ୍ୟକାରୀ ଏହାକୁ ବ୍ୟବହାର କରେ ବୋଲି ଧରି ନିଅନ୍ତୁ ନାହିଁ। IIS ନିୟୋଜନରେ, ASP.NET Core ମଡ୍ୟୁଲର ମଧ୍ୟ ପ୍ରକ୍ରିୟା-ପରିବେଶ କନଫିଗରେସନର ସମର୍ଥିତ ବ୍ୟବସ୍ଥା ଅଛି; ମୂଲ୍ୟ ଯୋଡ଼ିବା ସମୟରେ ବାକି ହୋଷ୍ଟିଂ କନଫିଗରେସନ ସଂରକ୍ଷିତ ରଖନ୍ତୁ।
ପ୍ରତ୍ୟାଶିତ ଭେରିଏବଲ ଅଛି କି ନାହିଁ ଲିପିବଦ୍ଧ କରନ୍ତୁ, କିନ୍ତୁ ଏହାର ସମ୍ପୂର୍ଣ୍ଣ ପ୍ରମାଣପତ୍ର-ବାହକ ମୂଲ୍ୟ ପ୍ରକାଶ କରନ୍ତୁ ନାହିଁ। ତା'ପରେ ବିଫଳ ଅନୁରୋଧ କରୁଥିବା କ୍ଲାଏଣ୍ଟ ସେହି ଉତ୍ସ ବ୍ୟବହାର କରେ ବୋଲି ନିଶ୍ଚିତ କରନ୍ତୁ। ସଠିକ ଭାବରେ କନଫିଗର ହୋଇଥିବା ଲଞ୍ଚର ଜାଣିଶୁଣି ଅନ୍ୟ ପଥ ବ୍ୟବହାର କରୁଥିବା କ୍ଲାଏଣ୍ଟକୁ ସୁଧାରିପାରିବ ନାହିଁ।