Cabeceras personalizadas Luasocket, 404 vueltas a 301
Mi pregunta anterior fue sobre obtener el título de la página enlua utilizando lasocket.http
módulo. La preguntase encuentra aquí. Anteriormente, las páginas de youtube me llevaron a unPágina de error 404. Residencia enLa ayuda de MattJ, Puse costumbreHOST
encabezado de la solicitud. Esto es lo que hice y cuál fue el 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>
Por lo que pude entender de esto, el error se debe básicamente aX-Content-Type-Options
valoradonosniff
. Leyendo sudocumentación, Tengo que saber esoel único valor definido, "nosniff", evita que Internet Explorer detecte una respuesta fuera del tipo de contenido declarado.
Ayúdame para que pueda usar el proxy personalizado y obtener el título de youtube (y algunos otros sitios, como se menciona en la pregunta anterior) de su cuerpo. Aquí está el archivo completo de LUA que tengo actualmente:
<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>