gpt4 book ai didi

jestjs - 如何在 puppeteer 中获取重定向状态?

转载 作者:行者123 更新时间:2023-12-01 04:29:02 27 4
gpt4 key购买 nike

我正在尝试使用 puppeteer 编写 Jest 测试

describe('Downloads', () => {
it(`should refirect to download page for ios`, async () => {
await page.setUserAgent('exotic');
let response = await page.goto(`http://localhost:8888/downloads`, {waitUntil: "networkidle0"});
let url = page.url();
expect(response.status()).toBe(303);
expect(url).toBe(`http://localhost:8888/downloads/ios`);
});
});

但是响应状态是 200 因为 goto 返回 http://localhost:8888/downloads/ios

的响应

如何获取重定向状态码?

最佳答案

您可以使用 request.redirectChain()为了这。它返回一个包含所有请求的数组。然后您可以像这样访问第一个请求(和响应):

const response = await page.goto('...');

const chain = response.request().redirectChain();
const redirectRequest = chain[0];
const redirectResponse = await redirectRequest.response();

expect(redirectResponse.status()).toBe(303);
expect(redirectResponse.url()).toBe('...');

关于jestjs - 如何在 puppeteer 中获取重定向状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55683290/

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