2013-06-18 4 views
0

XML 응답과 함께 HTTP GET 요청에 응답하는 서버 응용 프로그램이 있습니다. 이 응답의 내용을 얻기 위해 작은 Java 응용 프로그램을 만드는 데 문제가 있습니다. 읽은 모든 종류의 응답 또는 getContent() 또는 아무 것도 반환하지 않습니다. how to get url html contents to string in javaURL 내용 가져 오기

그러나의 InputStream의 그 사용되지 않는 내의 readLine() 메소드 :

은 내가 먼저 여기에 나열된 예를 시도했다. 위의 경우 read()/ available()은 항상 읽을 필요가 없음을 나타냅니다 (각각 -1과 0을 반환 함). 그러나 200 응답 코드를 제공합니다.

다른 URL (예 : http://www.google.com/humans.txt)은 정상적으로 작동합니다. How to read XML response from a URL in java?

나에게 준 :

그래서, 여기에 더 관련 링크 발견

String urlString = new String("http://homeserver/ampache/server/xml.server.php?action=handshake&auth=" + hash + "&timestamp=" + timestamp + "&version=3600013&user=" + user"); 
DocumentBuilder db = DocumentBuilderFactory.newInstance().newDocumentBuilder(); 
Document doc = db.parse(new URL(urlString).openStream()); 
System.out.println(doc.toString()); 

을하지만 저도 같은 문제를 가지고있는 것처럼 보이는 : 그런 다음

[Fatal Error] :1:1: Premature end of file. 
org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Premature end of file. 

를 I 아파치의 HTTPClient도 시도해 보았습니다. HTTPClient는 본문에서 zilch를 반환하지만 응답 코드는 200입니다.

URL은 나의 Ampache 설치입니다. 그것들은 XML API : http://homeserver/ampache/server/xml.server.php?action=handshake&auth...입니다. 이 URL은 내가이 시점에서 기대하고있는 무슨 브라우저에서 잘 작동 및 반환 값 : Ampache URL 형식이 잘못했다, 또는 Ampache의 API에 버그가있는 것처럼

<?xml version="1.0" encoding="UTF-8" ?> 
<root> 
    <error code="403"><![CDATA[Unauthorized access attempt to API - ACL Error]]> 
</error> 
</root> 
+0

몇 가지 코드를 보여 주실 수 있습니까? 코드가 없다면 당신이 뭘 잘못했는지 말하기가 어렵습니다. –

+0

@UwePlonus, 추가됨. – Nick

답변

1

것 같습니다. 요청은 http://homeserver/ampache/server/xml.server.php?action=handshake에 대해서는 정상적으로 작동하지만 인증 세부 정보가있는 URL에는 전체가 작동하지 않습니다.