【问题标题】:Alternative to CURLOPT_RANGE to grab a specific section替代 CURLOPT_RANGE 以获取特定部分
【发布时间】:2011-05-18 16:46:07
【问题描述】:

我正在尝试使用 curl 仅获取页面的一部分,这样它会下载更少的数据,从而使其更快。我一直在测试我能想到的所有可能的选择,但无济于事。我尝试过的主要方法是定义一个范围:curl_setopt($ch, CURLOPT_RANGE, "0-4096");

我尝试使用的服务器是 HTTP 1.1,但该设置在整个页面被拉出时无效。是否有另一种方法可以在 PHP 中的 X 字节或类似的内容之后关闭连接?

【问题讨论】:

  • 这仅在服务器实际接受Range 时才有效。您将通过发送请求并查看它是否返回 Accept-Ranges 标头来了解这一点。你能确认你是从你的服务器上得到的吗?
  • 我没看到,有没有其他方法可以做大致相同的事情?
  • 我不知道。除非你想创建自己的原始stream

标签: php curl range


【解决方案1】:

您可以使用自己的写入回调 (CURLOPT_WRITEFUNCTION),并在收到足够的数据后让它返回错误。

可以在此处找到使用此类写入回调的示例: http://curl.haxx.se/libcurl/php/examples/callbacks.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 2014-05-10
    • 2023-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多