

























@@ -246,6 +246,18 @@ describe("cdp", () => {
246246const msg = JSON.parse(rawDataToString(data)) as { id?: number; method?: string };
247247if (msg.method === "Target.createTarget") {
248248socket.send(JSON.stringify({ id: msg.id, result: { targetId: "T_QP" } }));
249+} else if (msg.method === "Target.attachToTarget") {
250+socket.send(JSON.stringify({ id: msg.id, result: { sessionId: "S1" } }));
251+} else if (
252+msg.method === "Target.detachFromTarget" ||
253+msg.method === "Page.enable" ||
254+msg.method === "Runtime.enable" ||
255+msg.method === "Network.enable" ||
256+msg.method === "DOM.enable" ||
257+msg.method === "Accessibility.enable" ||
258+msg.method === "Runtime.runIfWaitingForDebugger"
259+) {
260+socket.send(JSON.stringify({ id: msg.id, result: {} }));
249261}
250262});
251263});
@@ -461,20 +473,25 @@ describe("cdp", () => {
461473});
462474const wss = new WebSocketServer({ noServer: true });
463475server.on("upgrade", (req, socket, head) => {
464-if (req.url?.startsWith("/e/bad")) {
465-socket.destroy();
466-return;
467-}
468476wss.handleUpgrade(req, socket, head, (ws) => {
469477wss.emit("connection", ws, req);
470478});
471479});
472-wss.on("connection", (socket) => {
480+wss.on("connection", (socket, req) => {
473481socket.on("message", (data) => {
474482const msg = JSON.parse(rawDataToString(data)) as {
475483id?: number;
476484method?: string;
477485};
486+if (req.url?.startsWith("/e/bad")) {
487+socket.send(
488+JSON.stringify({
489+id: msg.id,
490+error: { message: "Browserless endpoint rejected command" },
491+}),
492+);
493+return;
494+}
478495if (msg.method === "Target.createTarget") {
479496socket.send(JSON.stringify({ id: msg.id, result: { targetId: "ROOT_FALLBACK" } }));
480497} else if (msg.method === "Target.attachToTarget") {
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。