type 决定打哪个上游、从哪取数:user → discover/search(条目在 user_list)、video → search/item(data)、general → general/search/stream(data)。不签名(sign: false)。general 的响应是多个 JSON 粘连的反爬形态,decode 负责切块并合并各块的 data。翻页游标由端点接续:user 用 rid,video / general 用 log_pb.impr_id 回填下一次的 search_id。响应里会多出一个 __search_type(amagi 加的,不是平台字段):三种 type 的响应形状在响应体里没有可靠的区分字段,下游靠这个键收窄形态。curl --location 'http://localhost:4567/api/douyin/fetch_search_info?query=undefined&type=undefined&number=undefined&search_id=undefined'success 判别