2012-07-25 89 views
1

我從服務器上提取數據,但需要知道數據類型後才能將其拉出。我知道我可以看看在Content-Type響應頭,我已經研究過使用要求CURL在收到標頭後立即斷開

捲曲--head http://x.com/y/z

然而有些服務器不支持「HEAD」命令(我得到一個501未實施的迴應)。

是否有可能以curl做一個GET,並在接收到所有標題後立即斷開連接?

回答

0

看看下面的回答:

https://stackoverflow.com/a/5787827

流。 UNIX哲學和管道:它們是數據流。由於curl和GET是unix過濾器,因此結束接收管道(dd)將終止curl或GET(SIGPIPE)。沒有人知道服務器是否足夠聰明以停止傳輸。然而,在TCP層面上,我認爲一旦沒有更多的響應,它會停止重試數據包。 @sehe

使用此方法,您應該可以根據需要下載任意數量的字節,然後取消請求。你也可以在收到一個空白行後終止一些魔法,這意味着頭部結束。

+0

有趣。我不知道pipee進程提前終止也會終止piper進程。 – 2012-07-25 18:00:22