전에 question에 질문했으며 Evgeniy Dorofeev에 답변했습니다. 비록 직접적인 연결을 위해 일했지만, 나는 그의 대답을 받아 들였다. 그는 단지 나에 대한 직접 링크에서 콘텐츠 형식을 확인했다 :URL에서 콘텐츠 유형 확인
- 직접 링크 :
String requestUrl = "https://dl-ssl.google.com/android/repository/android-14_r04.zip"; URL url = new URL(requestUrl); URLConnection c = url.openConnection(); String contentType = c.getContentType();
가 내가 아는을, 파일을 다운로드하는 방법은 두
URL
종류가 있습니다. 예 : https://dl-ssl.google.com/android/repository/android-14_r04.zip. 이 링크에서 데이터를 직접 다운로드하고 파일 이름 (이 링크에는.zip
확장자)을 포함한 파일 이름을 얻을 수 있습니다. 그래서 우리는 어떤 파일을 다운로드해야하는지 알 수 있습니다. 해당 링크에서 다운로드를 시도 할 수 있습니다. - 우회 링크. 예 : http://www.example.com/directory/download?file=52378. Google 드라이브에서 데이터를 다운로드하려고 시도한 적이 있습니까? Google 드라이브에서 데이터를 다운로드하면 위 링크와 같은 간접 링크가 제공됩니다. 링크에 파일이나 웹 페이지가 포함되어 있는지 여부는 알 수 없습니다. 또한이 링크 유형이 불분명하고 무작위이기 때문에 파일 이름과 파일 확장명을 알 수 없습니다.
파일인지 웹 페이지인지 확인해야합니다. 콘텐츠 형식이 파일 인 경우 다운로드해야합니다.
그래서 내 질문 :
- 은 어떻게 undirect 링크에서 콘텐츠 유형을 확인합니까?
- 이 질문에 대한 의견에서 알 수 있듯이 HTTP 리디렉션이 문제를 해결할 수 있습니까?
도움 주셔서 감사합니다.
가능한 해결책은 : [HttpClient를 리디렉션을 처리] (http://stackoverflow.com/questions/5169468/handling-httpclient-redirects) –
당신이 undirect 링크가 무엇을 의미합니까? HTTP 리디렉션? – Mnementh
이 문제에 대한 적절한 해결 방법을 얻었습니까? –