我正在为一个简单的 HTTP GET 请求而头疼。
使用类似的工具邮差,我收到了完整且预期的响应(超过 1000 行的 xml 文档,显示了我的 60 个专辑的详细信息)
对于这个 GET 请求,我提供:
- url 中嵌入的 4 个参数
- 默认标头“Content-Type: application/x-www-form-urlencoded”
- 1 个包含我的会话 ID 的 cookie,以保护我的身份
然而,使用 wget 时,我只得到一个 505 行长的 xml 文档。据我所知,我确实提供了相同的cookie、相同的参数和标头。
wget -o logfile.log -O response.xml --load-cookies cookies.txt https://app.viewbook.com/albums/?sort=date&order=desc&page=1&per_page=500
我得到的“response.xml”是一个格式良好的xml文档,但只有25个专辑,505行长:
我认为 wget 中可能存在内置限制,所以我尝试使用curl
使用curl,我得到完全相同的25张有限专辑,505行长的xml响应:
curl -D filelog.log -o response.xml -H "Content-Type: application/x-www-form-urlencoded" -b "_accountservice3_session=ZFp6UU..." https://app.viewbook.com/albums/?sort=date&order=desc&page=1&per_page=500
我不知道为什么 wget 和curl - 虽然没有完全失败 - 却没有给出与 Postman 工具相同的完整结果。
我在 GET 调用期间是否缺少一些参数?这个有限长度的响应可能来自哪里?