C# PuppeterSharep-在与.Net Core应用程序一起的容器中使用它时的冗余命令行参数
我有一个任务,需要我创建微服务,它使用木偶手制作页面截图。为此,我使用ASP.net核心web api项目模板。在Startup.cs文件中,我启动puppetersharp。以下是代码:C# PuppeterSharep-在与.Net Core应用程序一起的容器中使用它时的冗余命令行参数,c#,asp.net,docker,puppeteer,C#,Asp.net,Docker,Puppeteer,我有一个任务,需要我创建微服务,它使用木偶手制作页面截图。为此,我使用ASP.net核心web api项目模板。在Startup.cs文件中,我启动puppetersharp。以下是代码: public void ConfigureServices(IServiceCollection services) { services.AddControllers(); Browser puppeteerBrowser = null; Task.Run
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
Browser puppeteerBrowser = null;
Task.Run(async () => puppeteerBrowser = await LaunchPuppeteerBrowserAsync());
services.AddSingleton(puppeteerBrowser);
}
public static async Task<Browser> LaunchPuppeteerBrowserAsync()
{
Console.WriteLine("Starting to launch CHROMIUM...");
// Uncomment to let puppeteer download chromium
//await new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultRevision);
var browser = await Puppeteer.LaunchAsync(new LaunchOptions
{
// Comment to let puppeteer run downloaded chromium
ExecutablePath = "/usr/bin/chromium",
Args = new[]{ "--no-sandbox", "--disable-gpu-rasterization", "--disable-remote-extensions" },
Headless = true,
// Didn't help
//IgnoredDefaultArgs = new []{ "--enable-gpu-rasterization", "--enable-remote-extensions", "--load-extension=" }
});
Console.WriteLine("CHROMIUM launched successfully");
return browser;
}
后一个--禁用gpu光栅化--disable remote extensions
参数是我在LaunchOptions的Args属性中手动设置的参数-查看我提供的第一个代码示例。
我还尝试使用LaunchOptions的“IgnoredDefaultArgs”属性,因为根据库的文档化,在那里设置的选项将被忽略。您也可以在源代码中看到这种情况
-创建新的铬工艺,该工艺具有
放入“IgnoredDefaultArgs”数组的参数将从结果数组中删除。但这并没有起到作用,——启用gpu光栅化——启用远程扩展——加载扩展=
仍然存在
奇怪的是,当我让PuppeterSharep库获取浏览器本身,并从“LaunghOptions”中注释出“ExecutablePath”属性并启动它时,没有这样的冗余参数。我查过了
我的猜测是,库启动我下载的可执行文件时,会出现冗余参数。我的意思是,在某种程度上,Windows允许您向文件属性添加一些额外的命令行参数。但这在Linux中可能吗
有人能帮忙吗
/usr/lib/chromium/chromium --show-component-extension-options --enable-gpu-rasterization --no-default-browser-check --disable-pings --media-router=0 --enable-remote-extensions --load-extension= --disable-background-networking --enable-features=NetworkService,NetworkServiceInProcess --disable-background-timer-throttling --disable-backgrounding-occluded-windows --disable-breakpad --disable-client-side-phishing-detection --disable-component-extensions-with-background-pages --disable-default-apps --disable-dev-shm-usage --disable-extensions --disable-features=TranslateUI,BlinkGenPropertyTrees --disable-hang-monitor --disable-ipc-flooding-protection --disable-popup-blocking --disable-prompt-on-repost --disable-renderer-backgrounding --disable-sync --force-color-profile=srgb --metrics-recording-only --no-first-run --enable-automation --password-store=basic --use-mock-keychain --headless --hide-scrollbars --mute-audio about:blank --no-sandbox --disable-gpu-rasterization --disable-remote-extensions --remote-debugging-port=0 --user-data-dir=/tmp/kgkyt1d1.bqe