Update webdriver upload files method #1077
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
User description
feat: stream downloads & use IHttpClientFactory
Replace direct HttpClient creation with IHttpClientFactory
– prevents socket exhaustion and long-lived handler leaks.
Stream file content straight to FileStream (CopyToAsync)
– no more full byte[] buffers in RAM
Add per-file try/catch so one bad URL no longer aborts the batch.
PR Type
Enhancement
Description
• Replace HttpClient with IHttpClientFactory for better resource management
• Stream file downloads directly to disk instead of loading into memory
• Add error handling for individual file downloads
• Extract directory deletion logic into separate method
Changes walkthrough 📝
PlaywrightWebDriver.DoAction.cs
Enhanced file upload with streaming and error handling
src/Plugins/BotSharp.Plugin.WebDriver/Drivers/PlaywrightDriver/PlaywrightWebDriver.DoAction.cs
• Replace direct HttpClient instantiation with IHttpClientFactory
•
Stream file downloads using CopyToAsync instead of GetByteArrayAsync
•
Add try-catch blocks for individual file download error handling
•
Extract directory deletion logic into DeleteDirectory method
• Fix
minor formatting issues and duplicate typing action