2013-04-15 6 views
5

지원되지 않는 :이오 : 프로토콜 'HTTPS'나는 <a href="http://iolanguage.org/" rel="nofollow">Io language</a>에서 HTTPS를 통해 파일 가져 오기 위해 노력하고

url := URL with("https://api.example.com") 
url fetch println 

를 내가 얻을이 :

Error_0x7f97e1509a80: 
    location   = "/opt/local/lib/io/addons/Socket/io/URL.io:232" 
    message   = "Protocol 'https' unsupported" 

나는 그물에 뭔가를 찾기 위해 노력했다 그러나 모두가 알고 있듯이 이름 때문에 쉽지 않습니다. 나는이 스레드를 발견했다. http://tech.groups.yahoo.com/group/iolanguage/message/10898하지만 꽤 오래되었다.

Io에서 HTTPS 지원을 어떻게받을 수 있습니까?

편집

나는 이오의 소스에서 SecureSocket 애드온, OpenSSL에 대한 래퍼가 발생한 것을 발견했습니다. 하지만 Mountain Lion이 장착 된 MacBook에 sudo port io install을 설치했을 때 설치되지 않았습니다. 나는 근원지에서 그것을 만들려고했지만 운은 없다. 그것은 리눅스 머신에서도 나를 위해 구축되지 않았습니다.

EDIT2

난 그냥 (포함 된 스크립트 build.sh를 사용하여) 다시 소스 (git clone https://github.com/stevedekorte/io.git)에서 이오를 구축하는 시도하고 cmake OpenSSL을 감지했던 것으로 밝혀졌다 : 다음

-- Found OpenSSL: /usr/lib/libssl.dylib;/usr/lib/libcrypto.dylib 

하지만를 SecureSocket addon은 구축되어 있지 않습니다. 그것의 추가 정보 파일 : https://github.com/stevedekorte/io/tree/master/addons/SecureSocket는 말한다 :이 파일의 패치에서 OpenSSL 0.9.8e에 을 적용하지 않는

DTLS1 바인딩은 사용할 수 없습니다. 그러나이 패치는 d1_both.c에 핸드 쉐이크 재전송 코드 비활성화 을 포함하고 있습니다. 은 프로덕션 환경에 적합하지 않습니다. 어쨌든 사용하려면 등을 사용하십시오. 패치 (다양한 뉴스 그룹과 저의 실험으로 수집 한 것) 을 적용하고 주석 처리 된 build.io 블록의 주석 처리를 제거하십시오. 의 가치를 지닌 OpenSSL의 DTLS 지원은 0.9.8에서 새롭고 시작하기에 꽤 버그가 있습니다. . 좋은 생각인데 아직까지는 제작 준비가되어 있지 않은 것 같습니다. 이러한 바인딩도 예외는 아닙니다.

+1

어떤 부분이'c'와 관련이 있습니까? – Sebivor

+0

전체 Io 인터프리터는 현재 작성되지 않은 SSL 바인딩 모듈을 포함하여 C로 작성됩니다. – piokuc

+1

많은 것들이 C로 작성되었습니다. Microsoft Word가 C로 작성 되었기 때문에 여기에서 단어 문서를 여는 방법을 묻는 것이 맞습니까? 아니요. "소스에서 빌드를 시도했지만 행운이 없었습니다. Linux 시스템에서도 나에게 도움이되지 않았습니다."* 구체적으로 작성하거나 도움을 요청하지 않겠습니다. 사실, 우리는 * 당신이 구체적이지 않을 경우 * 당신을 도울 수 없습니다. 빌드 할 때 발생하는 오류는 무엇입니까? 'INSTALL' 파일이나 소스 코드와 함께 제공 될 수있는 readme 파일을 읽었습니까? 버그 추적기에 게시 했습니까? 이제이 질문들로 무장하고 자신의 질문을 업데이트하십시오 ... – Sebivor

답변

2

당신이 당신의 최선의 선택은 다음 로컬 파일/결과를로드 또는 파이프를 통해 그것을 반환 할 수 wget 또는 curl 같은 외부 도구를 호출 할 것이다 그것을 할 IO 얻을 수없는 경우.

+0

조언 주셔서 감사합니다하지만 정확히 내가 원하는 것은 아니에요 ... – piokuc

0

다른 해결 방법에 관심이있는 다른 사용자는을 SSL 작업을 수행하는 Io 프로그램 앞에 놓아야합니다. 나는 아직 나 자신을 테스트하지 않았다.

스터드 - 확장 가능한 TLS 랩 해제 데몬 스터드 가 TLS/SSL 연결을 종료하고 일부 백엔드에 암호화되지 않은 트래픽을 전달하는 네트워크 프록시입니다. 멀티 코어 컴퓨터에서 수십만 개의 연결 을 효율적으로 처리하도록 설계되었습니다.