Well,it`s complicated,I guess these two links can help :https://www.torproject.org/about/overview.html.en
Note this :"Everything in the HTTPS message is encrypted, including the headers, and the request/response load. With the exception of the possible CCA cryptographic attack described in the limitations section below, the attacker can only know the fact that a connection is taking place between the two parties, already known to him, the domain name and IP addresses."So you see HTTP headers are encrypted too.
And this:"Since protocols can operate either with or without TLS (or SSL), it is necessary for the client to indicate to the server the setup of a TLS connection. There are two main ways of achieving this. One option is to use a different port number for TLS connections (for example, port 443 for HTTPS). The other is for the client to request that the server switches the connection to TLS using a protocol-specific mechanism (for example, STARTTLS for mail and news protocols).Once the client and server have agreed to use TLS, they negotiate a stateful connection by using a handshaking procedure."Look,that means servers(and tor nodes) do not need to know what contain in your HTTP headers,they just know your browser are trying to connect with them.
This:"Instead of taking a direct route from source to destination, data packets on the Tor network take a random pathway through several relays that cover your tracks so no observer at any single point can tell where the data came from or where it's going."If the requested website do not support HTTPS,then your data will be decrypted at Tor exit nodes,and these exit nodes will know all of you,include which IP address(or domain name) it is to finally route the traffic to ;otherwise I guess only the special data which only contains what server(IP address or domain name) the client(this should be your browser,in fact it becomes one of Tor exit nodes finally) tries to build a SSL/TLS connection are the only data which is decrypted at Tor exit nodes,other data(include HTTP headers) is still encrypted until it reaches the requested server finally.
I hope my explaination can help you:)