如何检查是否已经收到了剧作家的响应?

发布于 2025-01-28 04:08:46 字数 385 浏览 4 评论 0原文

使用Java,我正在尝试等待对我正在等待的JavaScript脚本之一的回复。

我已经发现我可以使用,但这会导致问题,如果脚本已经完成加载,则在我到达Waitforresponse语句之前。

有没有办法等待脚本完成,但前提是尚未收到脚本?

        page.waitForResponse("**/*<<Script reference>>*.js", () -> { });

任何帮助将不胜感激!

Using Java, I'm trying to wait for a response to one of the Javascript scripts I'm waiting for.

I've already discovered that I can use waitForResponse, but this leads to issues if the script has already completed loading before I reach the waitForResponse statement.

Is there a way I could wait for the script to be completed but only if it hasn't been received yet?

        page.waitForResponse("**/*<<Script reference>>*.js", () -> { });

Any help would be greatly appreciated!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

夏有森光若流苏 2025-02-04 04:08:46

您需要做的是审核所有流量
在这里您有一些示例:

import com.microsoft.playwright.Browser;
import com.microsoft.playwright.BrowserType;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.Playwright;

public class Pw {
        public static void main(String[] args) {
            try (Playwright playwright = Playwright.create()) {
                BrowserType chromium = playwright.chromium();
                Browser browser = chromium.launch();
                Page page = browser.newPage();
                page.onResponse(response -> System.out.println(response.status() + " " + response.url()));
                page.navigate("https://playwright.dev/java/docs/network");
                browser.close();
            }
    }
}

输出:

200 https://playwright.dev/java/docs/network
200 https://playwright.dev/java/assets/css/styles.57a5681f.css
200 https://playwright.dev/java/js/redirection.js
200 https://playwright.dev/java/assets/js/main.bdc3f5b7.js
200 https://playwright.dev/java/assets/js/runtime~main.f37ee5cd.js
200 https://playwright.dev/java/img/playwright-logo.svg
200 https://playwright.dev/java/assets/js/04005ac5.4bff4e91.js

这样,您不会错过您的请求
希望我能够为您提供帮助。

What you need to do is audit all traffic.
Here you have some example:

import com.microsoft.playwright.Browser;
import com.microsoft.playwright.BrowserType;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.Playwright;

public class Pw {
        public static void main(String[] args) {
            try (Playwright playwright = Playwright.create()) {
                BrowserType chromium = playwright.chromium();
                Browser browser = chromium.launch();
                Page page = browser.newPage();
                page.onResponse(response -> System.out.println(response.status() + " " + response.url()));
                page.navigate("https://playwright.dev/java/docs/network");
                browser.close();
            }
    }
}

OUTPUT:

200 https://playwright.dev/java/docs/network
200 https://playwright.dev/java/assets/css/styles.57a5681f.css
200 https://playwright.dev/java/js/redirection.js
200 https://playwright.dev/java/assets/js/main.bdc3f5b7.js
200 https://playwright.dev/java/assets/js/runtime~main.f37ee5cd.js
200 https://playwright.dev/java/img/playwright-logo.svg
200 https://playwright.dev/java/assets/js/04005ac5.4bff4e91.js

This way you will not miss your request.
I hope I have been able to help you.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文