- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
模拟 node Webshot 发送的请求的正确方法是什么?在使用nock.js进行测试期间?
我尝试使用以下代码来捕获 http://example.com/foo.html 的模拟响应作为 foo.png
但模拟似乎不起作用。
const nock = require("nock");
const webshot = require("webshot");
describe("mock webshot request", function(){
this.timeout(20000);
beforeEach(function(){
nock("http://example.com").persist().get("/foo.html").reply(200, "<h1>Foo</h1>");
});
afterEach(function () {
nock.cleanAll();
});
it("captures mocked response", function(done){
webshot("http://example.com/foo.html", "foo.png",function(err) {
nock.isDone();
if(!err) done();
});
});
});
编辑:
解决方案是将模拟的响应正文传递给 Webshot 而不是 url:
webshot("<h1>Foo</h1>", ...
最佳答案
Nock
期望 http 请求发生在同一进程中。
注意: node-webshot
是在另一个进程中运行的 PhantonJS 的包装器。
在您的情况下,Nock
是在一个进程中设置的,但 http 请求发生在另一进程中。因此,您无法像您当前所做的那样模拟由 node-webshot
完成的 http 请求。
您需要的是对内置于 node-webshot
中的模拟 http 请求的支持,即,如果 node-webshot
没有此功能,则必须将此功能添加到 node-webshot
中。
关于node.js - 如何使用 nock.js 模拟 Node-Webshot 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50920115/
我想使用 webshot 将来自特定站点的一些 Web 元素导出到 png 文件R图书馆。 首先,安装和加载库: install.packages("webshot",dependencies = T
在服务器上,我想截取外部链接的屏幕截图并将其保存到服务器的文件夹中。 我正在尝试使用 meteor 包 webshot: https://github.com/TimHeckel/meteor-web
我正在使用 node-webshot 和 phantomjs-cli 将 html 字符串呈现为 png 图像。html 包含图像标签。当 src 属性指向本地文件且未引发错误时,不会呈现图像。但是,
我正在使用 bookdown以 PDF 和 HTML 格式创建“书”。 在我有 HTML 视频的地方,我在渲染时收到此消息: Error: Functions that produce HTML ou
首先,webshot 在此上下文中不起作用 webshot("google.com") 对于 webshot("www.google.com") 我得到: env: node\r: N
我在我的 Node (sails js) 项目上使用 webshot 将 HTML 字符串转换为图像,然后将该图像上传到 S3 存储桶。当我在本地计算机上运行它时,它工作正常,即它生成一个图像,并且我
我有一个 Web 应用程序,用带有 Express 框架的 Node.js 编写,前端使用 Twitter Boostrap 3,我正在使用此模块 node-webshot为了以 png 格式保存页面
我正在尝试向使用 node-webshot 生成的 PDF 添加标题, 但没有任何显示。 我正在使用这段代码: webshot('https://www.google.com', 'google.pd
Node webshot 用于对外部网站进行图片拍摄。 node webshot API 是: var webshot = require('webshot'); var fs = requ
tl;博士 我目前正在尝试使用 webshot 获取屏幕截图并上传到 Google 云端硬盘,无需将文件保存到文件系统作为该过程的中间步骤。 任何能让我做到这一点的代码——无论采用何种方法——都是非常
模拟 node Webshot 发送的请求的正确方法是什么?在使用nock.js进行测试期间? 我尝试使用以下代码来捕获 http://example.com/foo.html 的模拟响应作为 foo
我正在使用 webshot 来保存 wordcloud2 创建的 html 小部件,但是每当我将 png 文件传递给 figPath 时,我都会得到一个空白图像。如果我打开 .html 文件,我可
我正在使用此代码生成 pdf: let fileUri = process.env.PWD + '/storage/orders-pdf/' + fileName; // Commence Websh
我是一名优秀的程序员,十分优秀!