2017-01-17 4 views
1

사실, 내가 vlc 용 kodi addon을 다시 작성하고 LogIn 함수를 사용하여 맨 처음 붙어서 ZeroBrain Studio에서 루아 스크립트를 작성합니다.VLC 루아 스크립팅 https 요청

http = require("socket.http") 
json = require("dkjson") 
ltn12 = require("ltn12") 
https = require("ssl/https") 

data = "username=user&password=pass" 

res, code, response_headers, status = https.request { 
    response_body = {} , 
    method = "POST", 
    headers= { 
     ["Content-Type"]="application/x-www-form-urlencoded", 
     ["Content-Length"] = data:len() 
     }, 
    url = 'https://watch.nba.com/nba/secure/login?', 
    source = ltn12.source.string(data), 
    sink = ltn12.sink.table(response_body) 
} 

print (response_headers["set-cookie"]) 

문제는 "https"를 사용한다는 것입니다. 나는 그래서 오류

Error while running script C:\Program Files (x86)\VideoLAN\VLC\lua\extensions\nba_league_pass.lua, function (null)(): error loading module 'socket.core' from file '.\socket\core.dll': dynamic libraries not enabled; check your Lua installation 

를 얻을 수 this을 않지만 시도했습니다, 내 질문은 HTTPS는 VLC에 요청하는 방법입니까? 감사합니다. .

답변

1

'. 소켓 \ core.dll'파일에서 'socket.core'모듈을로드하는 동안 오류가 발생했습니다. 동적 라이브러리를 사용할 수 없습니다. Lua 설치를 확인하십시오.

"동적 라이브러리를 사용하지 않음"은 대개 Lua 인터프리터가 LUA_DL_DLL 컴파일 플래그 (Windows의 경우)없이 컴파일되었음을 나타냅니다. 이 컴파일 플래그를 지정하면 동적 라이브러리를로드 할 수 있습니다. (루아 인터프리터는 VLC에 포함되어 있거나 VLC에 내장되어있을 것입니다.)

+0

당신이 맞습니다. 이것은 오래된 vlc git https://github.com/videolan/vlc/에서 발견 한 것입니다. blob/master/contrib/src/lua/no-dylibs.patch하지만 새 버전에서는 동일한 코드 (패치)를 사용하므로 vlc을 해당 플래그로 컴파일해야하므로 오픈 소스에서는 결코 쉬운 일이 아닙니다. 당신의 도움을 주셔서 감사합니다. – Dmitriy

+0

@Dmitriy, 그 답이 맞으면 받아 들여야 할 수도 있습니다. –

+0

아직도 컴파일 할 수 없지만 Lua를 찾을 수 없다고 알려주지 만 Lua5.2와 dev-lua를 설치했는데 컴파일 한 후에 받아 들일 것입니다. 나는 이전 버전의 VLC를 시험해 보았습니다. 2.0.9는 패치가없는 마지막 버전이고 동적 라이브러리가 활성화되지 않았습니다 '오류도 발생했습니다 – Dmitriy