gpt4 book ai didi

java - 从 Jersey Rest 服务启动时,PhantomJS 返回黑色屏幕截图

转载 作者:行者123 更新时间:2023-12-02 05:34:49 24 4
gpt4 key购买 nike

当我不是从 Jersey Resource 启动 service.snapshot(msg); 时,它可以正常工作。但对于下面的代码,它会生成空白 png/pdf 文件。

@GET
@Path("/snapshot")
@Produces(MediaType.APPLICATION_JSON)
public RequestResponse snapshot( @QueryParam("url") String url, // snapshot(...)
@QueryParam("format") String format,
@QueryParam("quality") int quality) throws InterruptedException {

final PageSnapshotMsg msg = new PageSnapshotMsg.Builder().url(url).
format(format).
quality(quality).
build();

return service.snapshot(msg);
}

生成的 PhatomJS js 脚本是相同的:我想知道它可能是什么?

更新:我试图让我的 PhantomJS 脚本看起来像这样(添加延迟 2000),但它没有帮助:

var page = require('webpage').create();
page.viewportSize = { width: 800, height: 600 };
page.open('bl.ocks.org/mbostock/4063550', function(status) {just_wait(); });

function just_wait() {
setTimeout(function() page.render('c:/snapshots_db/1406931931354_bl_ocks_org_mbostock_4063550.png', {format: 'png', quality: '10'});
phantom.exit();}, 2000);}

最佳答案

尝试添加一段延迟,然后再进行屏幕截图。就在 page.render() 之前,这有助于页面在渲染之前实际加载。帮过我一次。如果有任何希望,请发帖。

否则,尝试检查保存图像的目录(对于应用程序)的写入权限以及页面 URL 是否可用。

可能相关.. Phantomjs creating black output from SVG using page.render

另请检查其他相关主题..

关于java - 从 Jersey Rest 服务启动时,PhantomJS 返回黑色屏幕截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25089035/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com