ಪ್ರಾಕ್ಸಿ ಮೂಲಕ ಅಪ್ಲೋಡ್ ಮಾಡುವಾಗ ಬೈನರಿ ಫೈಲ್ನ ಬೈಟ್ಗಳನ್ನು ಸಂರಕ್ಷಿಸಿ
ಫೈಲ್ ಅನ್ನು ಪಠ್ಯವಾಗಿ ಡಿಕೋಡ್ ಮಾಡಿ ASCII ಯಿಂದ ಮರುನಿರ್ಮಿಸುವ ಬದಲು ಪ್ರಾಕ್ಸಿ ಮೂಲಕ ಅಪ್ಲೋಡ್ ಮಾಡುವಾಗ ಫೈಲ್ನ ಬೈಟ್ಗಳು ಮತ್ತು ಬೈಟ್ ಉದ್ದಗಳನ್ನು ಸಂರಕ್ಷಿಸಿ.
ಬೈನರಿ ಫೈಲ್ HTTP ಕ್ಲೈಂಟ್ಗೆ ಬೈಟ್ಗಳಾಗಿ ತಲುಪಬೇಕು. ಪಠ್ಯ ಓದುಗರಿಂದ ಓದಿ ಫಲಿತಾಂಶದ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ASCII ಆಗಿ ಮರು-ಎನ್ಕೋಡ್ ಮಾಡುವುದು ಪ್ರಾಕ್ಸಿ ಏನನ್ನೂ ಸ್ವೀಕರಿಸುವ ಮೊದಲೇ ಮೌಲ್ಯಗಳನ್ನು ಬದಲಿಸಬಹುದು. ಸಣ್ಣ ಪಠ್ಯ ಮಾದರಿ ಕೆಲಸ ಮಾಡುವುದು ಆ ಮಾರ್ಗವನ್ನು ಚಿತ್ರ, ಆರ್ಕೈವ್ ಅಥವಾ ದಾಖಲೆಗೆ ಸುರಕ್ಷಿತವಾಗಿಸುವುದಿಲ್ಲ.
ಇರುವ .NET ಅಪ್ಲೋಡ್ ಮಾರ್ಗದಲ್ಲಿ, ಆ ಪರಿವರ್ತನೆಯನ್ನು ಬೈನರಿ ಬಾಡಿ ಮೂಲದಿಂದ ಬದಲಾಯಿಸಿ:
using var file = File.OpenRead(path);
using var content = new StreamContent(file);ವಿಷಯವನ್ನು ಅಪ್ಲಿಕೇಶನ್ನ ಕಾನ್ಫಿಗರ್ ಮಾಡಿದ HTTP ಅಪ್ಲೋಡ್ ಮೂಲಕ ಹಾದುಹೋಗಿಸಿ; ತುಣುಕು ಬಾಡಿ ಮೂಲವನ್ನು ಸ್ಥಾಪಿಸುತ್ತದೆ, ಆದರೆ ಇರುವ ಕ್ಲೈಂಟ್ ಇನ್ನೂ ವಿಧಾನ, ಗಮ್ಯಸ್ಥಾನ, ಪ್ರಾಕ್ಸಿ ಮತ್ತು ಜೀವಿತಾವಧಿ ನಿರ್ವಹಣೆಯನ್ನು ಹೊಂದಿದೆ.
ಹಳೆಯ ಸ್ಟ್ರಿಂಗ್ನ ಅಕ್ಷರ ಎಣಿಕೆಯಿಂದ ಲೆಕ್ಕಹಾಕಿದ ಯಾವುದೇ Content-Length ಅನ್ನು ತೆಗೆದುಹಾಕಿ. ಈ ಕ್ಷೇತ್ರವು ಆಕ್ಟೆಟ್ಗಳನ್ನು ಅಳೆಯುತ್ತದೆ. ಅಕ್ಷರ ಎಣಿಕೆಯನ್ನು ಬೇರೆ ಎನ್ಕೋಡಿಂಗ್ನ ಬಫರ್ನೊಂದಿಗೆ ಜೋಡಿಸುವ ಬದಲು HTTP ಲೈಬ್ರರಿಗೆ ಬಾಡಿ ಪ್ರತಿನಿಧಿಸುವಿಕೆಯಿಂದ ಫ್ರೇಮಿಂಗ್ ನಿರ್ಮಿಸಲು ಬಿಡಿ.
ಉದ್ದೇಶಪೂರ್ವಕ ಪಠ್ಯ ಅಪ್ಲೋಡ್ಗಾಗಿ, ಎನ್ಕೋಡಿಂಗ್ ಅನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ಆಯ್ಕೆಮಾಡಿ ಮತ್ತು ಕಳುಹಿಸಿದ ಬೈಟ್ಗಳಿಂದ ಅಗತ್ಯವಿರುವ ಉದ್ದವನ್ನು ಪಡೆಯಿರಿ. ಈ ಪಠ್ಯ-ಸ್ವರೂಪ ನಿರ್ಧಾರವನ್ನು ಅನಿಯಂತ್ರಿತ ಫೈಲ್ಗಳಿಗೆ ಅನ್ವಯಿಸಬಾರದು.
ವರ್ಗಾಯಿಸಿದ ಫೈಲ್ ಅನ್ನು ವಿಶ್ವಾಸಾರ್ಹ ನಿರೀಕ್ಷಿತ ಮೌಲ್ಯದೊಂದಿಗೆ ಹೋಲಿಸಿ. HTTP ಯಶಸ್ಸು ಆ ಪದರದಲ್ಲಿ ಅಪ್ಲೋಡ್ ಕಾರ್ಯಾಚರಣೆ ಪೂರ್ಣಗೊಂಡಿದೆ ಎಂದು ದೃಢೀಕರಿಸುತ್ತದೆ; ಹಿಂದಿನ ಪಠ್ಯ ಪರಿವರ್ತನೆ ಮೂಲ ಬೈಟ್ಗಳನ್ನು ಸಂರಕ್ಷಿಸಿತು ಎಂದು ಅದು ತೋರಿಸಲಾಗದು.