Cabeçalhos personalizados Luasocket, 404 voltas para 301
Minha pergunta anterior foi sobre como buscar o título da página emlua usando osocket.http
módulo. A questãoencontra-se aqui. Anteriormente, as páginas do youtube me levaram a umPágina de erro 404. Baseado emAjuda do MattJ, Eu coloquei personalizadoHOST
cabeçalho para o pedido. Foi o que eu fiz e qual foi o resultado:
<code>header = { host= "youtube.com" } local result,b,c,h = http.request{ url = "http://www.youtube.com/watch?v=_eT40eV7OiI", headers = header } print ( result, b, c, h ) for k,v in pairs(c) do print(k,v) end </code>Resultado
<code>1 301 table: 0047D430 HTTP/1.1 301 Moved Permanently x-content-type-options nosniff content-length 0 expires Tue, 27 Apr 1971 19:44:06 EST cache-control no-cache connection close location http://www.youtube.com/watch?v=_eT40eV7OiI content-type text/html; charset=utf-8 date Sat, 28 Apr 2012 04:26:21 GMT server wiseguy/0.6.11 </code>
Até onde eu pude entender isso, o erro é basicamente por causa deX-Content-Type-Options
valorizadonosniff
. Lendo o seudocumentaçãoEu tenho que sabero único valor definido, "nosniff", impede que o Internet Explorer detecte uma resposta do MIME longe do tipo de conteúdo declarado.
Por favor, ajude-me para que eu possa usar o proxy personalizado e buscar o título do youtube (e alguns outros sites, como mencionado na pergunta anterior) de seu corpo. Aqui está o arquivo LUA completo que tenho atualmente:
<code>local http = require "socket.http" http.PROXY="http://<proxy address here>:8080" header = { host= "youtube.com" } local result,b,c,h = http.request{ url = "http://www.youtube.com/watch?v=_eT40eV7OiI", headers = header } print ( result, b, c, h ) for k,v in pairs(c) do print(k,v) end </code>