2011-01-25 5 views

답변

3

Text_IO는 표준 라이브러리이며 그러한 방식으로 제 3 자에 의해 쉽게 확장 될 수 없으므로 정확한 인터페이스로 무언가를 찾을 책임이 없습니다.

플랫폼의 기본 파일 시스템이 HTTP를 지원한다면, 원하는대로 작동합니다. 그러나 나는 그런 식으로 작동하는 어떤 플랫폼을 모르겠습니다.

아마도 일반적인 해결책으로 원하는 것은 AWS (Ada Web Server)입니다. 원하는 경우 사람이이를 사용하여 본격적인 웹 서버를 구현할 수 있지만 HTTP 클라이언트 기능도 포함됩니다. HTTP 클라이언트가 원하는 것입니다 (AWS.Client 참조). 하나의 표준 API 호출을 작성하는 것보다 더 많은 작업을 수행 할 수 있지만 너무 많은 작업이 필요하지는 않습니다.

여기 Rosetta Code에서 cribbed, 예입니다 :

with Ada.Text_IO; 
use Ada.Text_IO; 
with AWS.Client; 
with AWS.Response; 
procedure HTTP_Request is 
begin 
    Put_Line (AWS.Response.Message_Body (AWS.Client.Get (URL => "http://www.rosettacode.org"))); 
end HTTP_Request; 
1

사용 및 여러 HTTP 클라이언트를 구현하는 데, 난 당신이 설립하고 전용 클라이언트를 사용하여 조언을 것입니다. 순진한 구현 http://tools.ietf.org/html/rfc2616에 의해 처리되지 않는 HTTP 표준에는 많은 복잡성이 있습니다.

libCURL과 같은 성숙한 라이브러리에 Ada Bindings를 사용해보십시오. http://curl.haxx.se/libcurl/ada95/

관련 문제