2011-03-28 44 views
1

嘿家伙。 我有这个功能:从标题拆分

我需要拆分头和html。

string simpleGET(string url, string send) { 

    string headers; 
    string buffer; 
    TcpSocket socket; 
    SocketStream socketStream; 

    if(send is null) 
     headers = "GET/HTTP/1.1\r\nHost:"~url~"\r\nUConnection:close\r\n\r\n"; 
    else 
     headers = send; 


    socket = new TcpSocket(new InternetAddress(url, 80)); 
    socket.send(headers); 
    socketStream = new SocketStream(socket); 

    while(!socketStream.eof()){ 
        //here filter, what is headers and the HTML 
      buffer ~= socketStream.readLine() ~ "\r\n"; 

    } 

    socketStream.close; 
    socket.close; 

     return buffer; 
} 

谢谢,提前。

回答

3

您应该能够在两个分裂\ r \ n链

string[] parts = std.string.split(buffer, "\r\n\r\n")

份[0]应该包含标头和部分[1]应包含HTML

+1

如果该序列也出现在HTML正文中?我知道这很迂腐,但它可能发生 – 2011-03-28 23:15:40

+0

@Andrw +1,这是我的问题。 – 2011-03-28 23:31:16

+2

只需将第一个分割作为标题并合并其余。 – 2011-03-29 20:19:26