繁体   English   中英

API GET请求测试使用Playwright

[英]API GET Request test using Playwright

我一直在尝试使用以下代码验证 GET 状态。 不幸的是,我收到错误“apiRequestContext.get:connect ECONNREFUSED::1:8080”。 任何见解将不胜感激。

代码:

 import { expect, test } from '@playwright/test'; test('Get health status', async ({ request }) => { const response = await request.get('http://localhost:8080/myapp/actuator/health') expect(response.status()).toBe(200) })

错误: apiRequestContext.get:连接 ECONNREFUSED::1:8080

确认

可能是该服务仅侦听 IPv4,但客户端使用 IPv6。 在以下位置检查单词IPv4IPv6

  • netstat -tulpen (在 Linux 上)或
  • sudo lsof -iTCP -sTCP:LISTEN -n -P 8080 | grep -i --color 8080 sudo lsof -iTCP -sTCP:LISTEN -n -P 8080 | grep -i --color 8080 (在 macOS 上)。

解决方案

有两种选择:

  1. 如果服务可以处理,强制使用 IPv4:连接到http://127.0.0.1:8080而不是http://localhost:8080

  2. 为服务启用 IPv6 绑定。 这取决于您的服务框架。

  3. 禁用本地主机的 IPv6 地址。 编辑主机文件 ( sudo vi /etc/hosts ) 并删除::1 localhost

资源

参见https://blog.apify.com/ipv4-mapped-ipv6-in-nodejs/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM