Muszę przesłać obrazy i pliki tekstowe z mojej aplikacji na serwer zdalny (tylko http bez ftp) używając java. Moja aplikacja jest w frameworku jsf. Szukałem, ale nie znaleziono żadnych odpowiednich rzeczy. Czy ktoś może mnie prowadzić? Właściwie powinienem przesłać pliki do specjalnego folderu na zdalny serwer. Mam dwie aplikacje ze wspólną ścieżką do przesyłania plików, więc aby uzyskać dostęp do tych plików, I decidec, aby przesłać wspólne pliki (takie jak obrazy i teksty) do trzeciego serwera. Pierwsza aplikacja powinna przesłać pliki na ten zdalny serwer, a druga aplikacja powinna je odczytać. Więc moją ciężką częścią tego rozwiązania jest przesyłanie plików na ten trzeci serwer (w rzeczywistości zdalny serwer) za pomocą http.jak załadować plik na serwer zdalny http za pomocą java?
Odpowiedz
Możesz użyć httpclient.
Wyślij pliki za pomocą testu POST jako metody.
Spójrz na apache commons-fileupload. Możesz znaleźć przykładowy kod here.
Użyj następującego kodu:
byte[] data = bos.toByteArray();//convert ur file into byte[]
HttpClient httpClient = new DefaultHttpClient();//Client
HttpPost postRequest = new HttpPost(YOUR_SERVER_URL);//Post Request to specified URL
ByteArrayBody bab = new ByteArrayBody(data, "a.txt");
MultipartEntity reqEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);// Multipart data
reqEntity.addPart("uploadingFile", bab); //adding data to request entity
postRequest.setEntity(reqEntity);//adding request entity to post request
HttpResponse response = httpClient.execute(postRequest);
gdzie powinienem dodać mój adres URL zdalnego serwera? W twoim kodzie czym jest "a.txt"? Czy możesz mi więcej wytłumaczyć? – zorro6064
dodaj adres url serwera w YOUR_SERVER_URL ... a.txt to plik, który wysłałem 2 serwer –
Użyłem twojego kodu, ale nic się nie poruszyło i żaden wyjątek nie rzuca. Czy możesz mnie prowadzić? Nic nie zmieniłem w powyższym kodzie. Dzięki – zorro6064
Aby przesłać plik do określonego folderu, serwer musi obsługiwać API że.
po stronie serwera do odbioru przesłanych plików, można użyć http://commons.apache.org/fileupload/
stronie klienta do wysyłania żądania przesyłania plików, można użyć https://hc.apache.org/httpcomponents-client-ga/index.html
Określony folder na serwerze zdalnym. moja aplikacja działa na moim serwerze, host pliku nie jest tam, gdzie działa moja aplikacja. – zorro6064
Jak już powiedziałem, serwer zdalnego hosta/pliku musi udostępniać interfejs API do określania zdalnego miejsca docelowego podczas przesyłania za pośrednictwem protokołu HTTP – gigadot
jak na swoje wymagania, trzeba wysłać wiele obrazów & plików tekstowych Więc HTTP wielu przesyłanie plików część wydaje się być odpowiednim solution.You można uzyskać dalsze informacje na ten temat tutaj: http://commons.apache.org/fileupload/using.html
zrobić
@Autowired
ServletContext c;
lub wziąć obiektowi
byte[] bytes = file.getBytes();
String UPLOAD_FOLDEdR=c.getRealPath("/images");
Path path = Paths.get(UPLOAD_FOLDEdR +"/"+ file.getOriginalFilename());
Files.write(path, bytes);
System.out.println(path);
String Pic_Name =file.getOriginalFilename();
. Czy możesz edytować odpowiedź, aby miała sens? Obecnie kod jest trudny do odczytania i nie jest jasne, w jaki sposób rozwiązuje to problem. Proszę lepiej wyjaśnij swoją odpowiedź. – melwil
- 1. Jak mogę otworzyć zdalny plik przez HTTP za pomocą Emacsa?
- 2. Wgrywanie na serwer zdalny
- 3. odczytać plik XML za pomocą http
- 4. Jak przesłać plik na serwer za pomocą Yesod
- 5. Serwer HTTP za NATs
- 6. Jak odczytać plik XML za pomocą Java?
- 7. Jak pobrać plik za pomocą iskry java?
- 8. Jak mogę załadować lokalny plik za pomocą jQuery? (z plikiem: //)
- 9. Java: Jak przesłać plik na serwer WebDAV z serwletu?
- 10. Kopiowanie plików na serwer zdalny za pośrednictwem protokołu RDP za pomocą skryptu
- 11. Skompiluj plik Java ... za pomocą programu Java
- 12. przesłać pliki na serwer zdalny za pomocą mftter sftp w Express Node js?
- 13. cURL przesyłanie plików na zdalny serwer w systemie MS Windows
- 14. Jak usunąć plik z serwera FTP za pomocą Java?
- 15. Jak przesłać plik za pomocą wpisu http? Delphi 2009
- 16. Java - jak skompilować pojedynczy plik za pomocą Java Eclipse
- 17. Jak uruchomić zdalny serwer Fast Scala Compiler?
- 18. Serwer proxy HTTP HTTP
- 19. Przesyłanie pliku na serwer za pomocą modernizacji
- 20. Serwer zdalny zwrócił błąd: (401) Nieautoryzowany
- 21. SCP w/ssh: kopiowanie lokalnego pliku z systemu Windows na serwer zdalny za pomocą scp
- 22. Wbudowany serwer HTTP w aplikacji Swing Java
- 23. MPMoviePlayerController odtwarza plik lokalny, ale nie zdalny przez HTTP
- 24. Zdarzenia wysłane przez serwer w środowisku Play za pomocą Java
- 25. Jak załadować wp_editor za pomocą Jquery?
- 26. Jak nadzorować serwer internetowy za pomocą daemontools?
- 27. Jak zrobić plik wykonywalny za pomocą maven?
- 28. Jak sprawdzić, czy zdalny serwer tls1.2 wsparcie na Mac OS
- 29. Sprawdź katalog zdalny za pomocą PHP SSH2
- 30. jak pobrać plik obrazu za pomocą okhttpclient w java
Każdy, kto sugeruje commons FileUpload wysłać plik jest źle ** **. Zamierzeniem jest * przeanalizowanie * żądania wieloczęściowego/danych formularza po drugiej stronie, a nie * tworzenie i wysyłanie * żądania wieloczęściowego/formularza danych po twojej stronie. – BalusC
MAYBE pytanie powinno zostać wyjaśnione. Nie oczekuj dokładnych odpowiedzi z pytaniem, które jest niewyraźne! –
Mam dwie aplikacje z udostępnioną ścieżką do przesyłania plików, więc aby uzyskać dostęp do tych plików, I decidec, aby przesłać wspólne pliki (takie jak obrazy i teksty) do trzeciego serwera. Pierwsza aplikacja powinna przesłać pliki na ten zdalny serwer, a druga aplikacja powinna je odczytać. Tak więc moją trudną częścią tego rozwiązania jest przesyłanie plików na ten trzeci serwer (w rzeczywistości zdalny serwer) za pomocą http. – zorro6064