【付费定制】把网站的联想搜索 用QK的搜索栏调用【网络请求类】

动作需求 · 2409 次浏览
我的梦想捐钱修路建学校 创建于 15天8小时前


付费定制 不急不催 佛性 看大佬自己安排工期 大佬可否给我报个价?

需求:把网站的联想搜索补全功能 用QK的搜索栏调用 (这个站点不需要登录账号就可使用搜索补全)

搜索网址:www.archiproducts.com

补全请求网址https://www.archiproducts.com/zh/search/suggest?priority=Home

项目难点:(下面是我把请求头 给GPT分析的)

  1. ASP.NET Core 防跨站请求伪造(CSRF)验证
    1. 请求中通过 Cookie 提供了一个名为 “.AspNetCore.Antiforgery.xgdWZ61DnJU” 的值,这是 ASP.NET Core 内置的防伪令牌。通常,服务器会在生成页面时同时将防伪令牌存入 Cookie 和隐藏表单字段中,提交请求时对比二者是否匹配,以防止 CSRF 攻击。
    2. 如果你要重放此请求,需要保证使用一个有效且未过期的防伪令牌。这通常意味着你需要在重放前先获取最新的页面或令牌,因为防伪令牌往往是动态生成并与会话绑定的。
  2. Cloudflare 安全验证

    1. 请求中还包含了一个 “cf_clearance” 的 Cookie,这是 Cloudflare 为了防止机器人或恶意请求而设置的验证机制。该 Cookie 表明客户端已经通过了 Cloudflare 的安全挑战。
    2. 在重放时,你必须确保这个 Cookie 同样有效,否则 Cloudflare 可能会阻止请求。通常,Cloudflare 的验证也是有时效性的,并且可能会根据客户端 IP 或其他参数动态更新。 

  3. 此外,请求头还包括了一些辅助验证信息,例如:
    1. X-Requested-With: XMLHttpRequest:标明这是一个 AJAX 请求,可能用于服务器端判断请求类型。
    2. Origin 与 Referer:这两个头部帮助服务器确认请求来源,确保请求是从预期的网页发起的。
    3. User-Agent、Accept-Language、Accept-Encoding 等头部信息也有助于伪装请求,使其看起来更像是来自真实用户。

 

如何重放该请求:

  • 捕获并保持所有必要的 Cookie:包括 ASP.NET Core 防伪令牌和 Cloudflare 的 cf_clearance。注意这些 Cookie 一般都有有效期,而且防伪令牌可能与当前会话绑定,所以需要更新为当前有效的值。
  • 确保请求头一致:重放时应复制所有关键请求头(如 User-Agent、Origin、Referer、X-Requested-With 等),否则服务器可能检测到异常。
  • 正确构造 multipart/form-data 数据:Content-Type 中的 boundary 参数必须与实际请求体中的数据结构一致,确保数据分段正确。
  • 关注动态参数:如果请求体中包含动态生成的防伪令牌或其他会话标识符,这些参数也需要随请求一起更新。

总之,重放此请求时必须确保所有安全相关的信息(Cookie、请求头、请求体中的动态参数等)都与服务器当前预期的一致,否则请求可能会被拒绝。

 

需求照


回复内容
暂无回复
回复主贴