You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用AWS Lambda/EC2调用av.by API返回423错误的求助

调用av.by API返回423状态码问题排查

在使用AWS Lambda或EC2实例调用https://av.by/相关API时,持续收到423状态码错误。已为Lambda配置VPC,但问题仍未解决,期望获取200状态码的正常响应数据。

请求代码(Node.js)

const contentJson = await fetch(
      'https://api.av.by/offer-types/cars/filters/main/apply',
      {
        headers: {
          accept: '*/*',
          'accept-language': 'ru,nl;q=0.9',
          'content-type': 'application/json',
          'sec-ch-ua':
            '"Not_A Brand";v="8", "Chromium";v="120", "Google Chrome";v="120"',
          'sec-ch-ua-mobile': '?0',
          'sec-ch-ua-platform': '"macOS"',
          'sec-fetch-dest': 'empty',
          'sec-fetch-mode': 'cors',
          'sec-fetch-site': 'same-site',
          'x-device-type': 'web.desktop',
          Referer: 'https://cars.av.by/',
          'Referrer-Policy': 'strict-origin-when-cross-origin',
        },
        body: '{"page":2,"properties":[{"name":"price_currency","value":2}],"sorting":4}',
        method: 'POST',
      },
);

返回的响应信息

Response {
  [Symbol(realm)]: null,
  [Symbol(state)]: {
    aborted: false,
    rangeRequested: false,
    timingAllowPassed: true,
    requestIncludesCredentials: true,
    type: 'default',
    status: 423,
    timingInfo: {
      startTime: 19720.235054999997,
      redirectStartTime: 0,
      redirectEndTime: 0,
      postRedirectStartTime: 19720.235054999997,
      finalServiceWorkerStartTime: 0,
      finalNetworkResponseStartTime: 0,
      finalNetworkRequestStartTime: 0,
      endTime: 0,
      encodedBodySize: 0,
      decodedBodySize: 0,
      finalConnectionTimingInfo: null
    },
    cacheState: '',
    statusText: '',
    headersList: HeadersList {
      cookies: null,
      [Symbol(headers map)]: [Map],
      [Symbol(headers map sorted)]: null
    },
    urlList: [ [URL] ],
    body: { stream: undefined }
  },
  [Symbol(headers)]: HeadersList {
    cookies: null,
    [Symbol(headers map)]: Map(5) {
      'server' => [Object],
      'date' => [Object],
      'content-length' => [Object],
      'connection' => [Object],
      'keep-alive' => [Object]
    },
    [Symbol(headers map sorted)]: null
  }
}

可能的解决方向

  • IP风控拦截:av.by大概率对AWS云服务商的IP段做了限制,这类IP被判定为爬虫或非人工请求。
    • 给EC2绑定独立弹性IP,或给Lambda配置带弹性IP的NAT网关,更换出站IP后重试。
    • 降低请求频率,模拟真实用户的访问节奏,避免短时间内多次请求。
  • 请求头补全:原请求缺失关键的User-Agent头,这是网站识别正常请求的核心标识之一。
    • 添加标准浏览器User-Agent,例如:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36。
    • 将请求体改为JSON对象序列化的方式,避免手动拼接字符串出现格式问题:body: JSON.stringify({page:2, properties:[{name:"price_currency", value:2}], sorting:4})。
  • VPC配置检查:确认VPC的安全组、网络ACL允许出站443端口流量,同时验证DNS解析是否正常(可在EC2执行nslookup api.av.by,或在Lambda中添加域名解析日志)。
  • 会话验证:部分API需要携带浏览器访问时生成的Cookie才能正常响应,可先通过浏览器打开https://cars.av.by/,复制Cookie到请求头的Cookie字段后重试。

内容的提问来源于stack exchange,提问作者Artur Hearhizau

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 18:16:29