① 如何用java實現異地文件的上傳
用http請求讀取其他機子上的文件,然後寫入本地
② java上傳圖片到遠程伺服器上,怎麼解決呢
不好實現,網上有方法說用FTP,但是不會用啊,找了一個 public static void forcdt(String dir){ InputStream in = null; OutputStream out = null; File localFile = new File(dir);try{//創建file類 傳入本地文件路徑 //獲得本地文件的名字 String fileName = localFile.getName(); //將本地文件的名字和遠程目錄的名字拼接在一起 //確保上傳後的文件於本地文件名字相同 SmbFile remoteFile = new SmbFile("smb://administrator:[email protected]/e$/aa/"); //創建讀取緩沖流把本地的文件與程序連接在一起 in = new BufferedInputStream(new FileInputStream(localFile)); //創建一個寫出緩沖流(注意jcifs-1.3.15.jar包 類名為Smb開頭的類為控制遠程共享計算機"io"包) //將遠程的文件路徑傳入SmbFileOutputStream中 並用 緩沖流套接 out = new BufferedOutputStream(new SmbFileOutputStream(remoteFile+"/"+fileName)); //創建中轉位元組數組 byte[] buffer = new byte[1024]; while(in.read(buffer)!=-1){//in對象的read方法返回-1為 文件以讀取完畢 out.write(buffer); buffer = new byte[1024];}}catch(Exception e){ e.printStackTrace();}finally{try{//注意用完操作io對象的方法後關閉這些資源,走則 造成文件上傳失敗等問題。! out.close(); in.close();
③ java 文件上傳 程序部署在linux上 怎麼將文件上傳到區域網的另外一台電腦上,不在部署程序的那台電腦上。
你所說的就是把文件傳到別的電腦里,如果是這樣的話,你可以這樣做:
1,如果目的主機是linux操作系統的話,你可以用:
scp -rp java絕對目錄 root@目的主機IP:+目錄名
2,如果目的主機是Windows系統的話,你可以創建一個samba服務或者ftp服務來實現文件的共享。
④ 用webuploader怎麼解決跨域上傳文件的問題
你好,
跨域請求前瀏覽器會自動發出一個options請求,如果伺服器的響應頭部中有如下信息:
Access-Control-Allow-Origin: #允許訪問的源,如ht localhost:3000
Access-Control-Allow-Methods: #允許的方法,如get, post
瀏覽器收到這個響應就會繼續原來的請求,否則就會終止。
在webuploader中可以在uploadBeforeSend的回調中設置請求的頭部,例如
uploader.on('uploadBeforeSend', function(obj, data, headers) {
_.extend(headers, {
"Origin": "h /localhost:3000",
"Access-Control-Request-Method": "POST"
});
});
在服務端的post響應中增加頭部:Access-Control-Allow-Origin //localhost:3000
完整配置參考:
跨域請求的問題 · Issue #1265 · fex-team/webuploader · GitHub
還有相關討論
麻煩講一下跨域的相關配置,謝謝! · Issue #135 · fex-team/webuploader · GitHub
⑤ Java cookie的跨域問題怎麼在前端域名下添加cookie
假設你的前端站點域名為www.xxx.com 後端數據介面域名為 api.xxx.com
通常有以下2種解決方案
cookie寫入的時候寫入xxx.com域下不要寫到www.xxx.com或者api.xxx.com下
在www.xxx.com中配置反向代理,將www.xxx.com/api代理到api.xxx.com,然後cookie就正常的寫到www.xxx.com域下就可以了
⑥ java如何將文件上傳其他伺服器上 我的文件系統准備單獨弄個系統,如何將文件上傳到那個系統里
在目標系統上裝個ftp伺服器,然後用ftp協議上傳文件
或者在目標機器上裝linux,就可以使用rsync, scp等方法傳了
⑦ java為什麼會有跨域問題
前言
相信大家在寫前端腳本的時候經常會遇到發送數據到後台的情況,但是由於瀏覽器的限制,不同域名之間的數據是不能互相訪問的,那前端怎麼和後端如何進行數據之間的交換呢?
JavaScript由於安全性方面的考慮,不允許頁面跨域調用其他頁面的對象,那麼問題來了,什麼是跨域問題?
答:這是由於瀏覽器同源策略的限制,現在所有支持JavaScript的瀏覽器都使用了這個策略。那麼什麼是同源呢?所謂的同源是指三個方面「相同」:
域名相同
協議相同
埠相同
下面就舉幾個例子來幫助更好的理解同源策略。
URL
說明
是否允許通信
http://www.a.com/a.js
http://www.a.com/b.js 同一域名 允許
http://www.a.com/a.js
http://www.b.com/a.js 不同域名 不允許
http://www.a.com:8000/a.js
http://www.a.com/b.js 同一域名不同埠 不允許
https://www.a.com/a.js
http://www.a.com/b.js 同一域名不同協議 不允許
在JAVA中處理跨域問題,通常有以下兩種常用的解決方法。
第一種解決方法
後台代碼在被請求的Servlet中添加Header設置:
Access-Control-Allow-Origin這個Header在W3C標准里用來檢查該跨域請求是否可以被通過,如果值為*則表明當前頁面可以跨域訪問。默認的情況下是不允許的。
在前端JS中需要向Servlet發出請求,請求代碼如下所示:
第二種解決方法
通過jsonp跨域請求的方式。JSONP和JSON雖然只有一個字母的區別,但是他們完全就是兩回事,很多人很容易把他們搞混。JSON是一種數據交換的格式,而JSONP則是一種非官方跨域數據交互協議。
首先來說一下前端JS是怎麼發送請求。代碼如下所示:
這里的callbackparam和success_jsonpCallback可以理解為發送的data數據的鍵值對,可以自定義,但是callbackparam需要和後台約定好參數名稱,因為後台需要獲取到這個參數裡面的值(即success_jsonpCallback)。
下面,最重要的來了,後台怎麼樣獲取和返回數據呢。代碼如下所示:
首先需要獲取參數名為callbackparam的值,這里獲取到的值就是「success_jsonpCallback」。然後將這個值加上一對小括弧。小括弧里放入你需要返回的數據內容,比如這里我返回一個JSON對象。當然你也可以返回其他對象,比如只返回一個字元串類型數據也可以。最後前端JS返回的數據就是這樣的:
瀏覽器會自動解析為json對象,這時候你只需要在success回調函數中直接用data.status就可以了。
⑧ 如何用java程序實現上傳文件到指定的URL地址
參考代碼如下:
import java.io.*;
/**
* 復制文件夾或文件夾
*/
public class CopyDirectory {
// 源文件夾
static String url1 = "f:/photos";
// 目標文件夾
static String url2 = "d:/tempPhotos";
public static void main(String args[]) throws IOException {
// 創建目標文件夾
(new File(url2)).mkdirs();
// 獲取源文件夾當前下的文件或目錄
File[] file = (new File(url1)).listFiles();
for (int i = 0; i < file.length; i++) {
if (file[i].isFile()) {
// 復制文件
File(file[i],new File(url2+file[i].getName()));
}
if (file[i].isDirectory()) {
// 復制目錄
String sourceDir=url1+File.separator+file[i].getName();
String targetDir=url2+File.separator+file[i].getName();
Directiory(sourceDir, targetDir);
}
}
}
// 復制文件
public static void File(File sourceFile,File targetFile)
throws IOException{
// 新建文件輸入流並對它進行緩沖
FileInputStream input = new FileInputStream(sourceFile);
BufferedInputStream inBuff=new BufferedInputStream(input);
// 新建文件輸出流並對它進行緩沖
FileOutputStream output = new FileOutputStream(targetFile);
BufferedOutputStream outBuff=new BufferedOutputStream(output);
// 緩沖數組
byte[] b = new byte[1024 * 5];
int len;
while ((len =inBuff.read(b)) != -1) {
outBuff.write(b, 0, len);
}
// 刷新此緩沖的輸出流
outBuff.flush();
//關閉流
inBuff.close();
outBuff.close();
output.close();
input.close();
}
// 復制文件夾
public static void Directiory(String sourceDir, String targetDir)
throws IOException {
// 新建目標目錄
(new File(targetDir)).mkdirs();
// 獲取源文件夾當前下的文件或目錄
File[] file = (new File(sourceDir)).listFiles();
for (int i = 0; i < file.length; i++) {
if (file[i].isFile()) {
// 源文件
File sourceFile=file[i];
// 目標文件
File targetFile=new
File(new File(targetDir).getAbsolutePath()
+File.separator+file[i].getName());
File(sourceFile,targetFile);
}
if (file[i].isDirectory()) {
// 准備復制的源文件夾
String dir1=sourceDir + "/" + file[i].getName();
// 准備復制的目標文件夾
String dir2=targetDir + "/"+ file[i].getName();
Directiory(dir1, dir2);
}
}
}
}
⑨ Java怎樣實現跨伺服器文件上傳
另一台機器也要有處理文件上傳的WEB程序,你可以參考Stream上傳插件(支持HTML5和Flash兩種方式上傳)
Stream 上傳插件
Stream 是解決不同瀏覽器上傳文件的插件,是Uploadify的Flash版和Html5版的結合!
Stream 簡介
Stream 是根據某網的文件上傳插件加工而來,支持不同平台(Windows, Linux, Mac, Android, iOS)下,主流瀏覽器(IE7+, Chrome, Firefox, Safari, 其他)的上傳工作,當然在Html5標准下,還支持文件的斷點續傳功能,有效解決大文件的Web上傳問題!
主要特徵
1. 源碼完全開放,目前有Java、PHP、Perl三種後台語言實現
2. 支持HTML5、Flash兩種方式(跨域)上傳
3. 多文件一起上傳
4. HTML5支持斷點續傳,拖拽等新特性
5. 兼容性好IE7+, FF3.6+, Chrome*,Safari4+,遨遊等主流瀏覽器
6. 進度條、速度、剩餘時間等附屬信息
7. `選擇文件的按鈕`可以自定義
8. 簡單的參數配置實現 靈活多變的功能
9. 支持文件夾上傳(Chrome21+, Opera15+)
10. 支持自定義UI(V1.4+)
指定跨域上傳就可以了
⑩ Java如何做到本地視頻跨域名自動上傳
「執行的程序」 文件路徑
//注意一:程序的路徑要打引號,我的迅雷看看在f盤 ,文件在e盤。
//注意二:程序和文件夾路徑中間有個空格.
根據下面的代碼自己修改吧
1
Runtime.getRuntime().exec("\"f:\\Program Files (<a href="https://www..com/s?wd=x86&tn=44039180_cpr&fenlei=-n1m4uhP-qkIyN1IA-EUBtdPHbdnHmvn1m3P1DzrHTdnWf" target="_blank" class="-highlight">x86</a>)\\Thunder Network\\Xmp\\Program\\XMP.exe\" e:\\mp4\\<a href="https://www..com/s?wd=high%E6%AD%8C&tn=44039180_cpr&fenlei=-n1m4uhP-qkIyN1IA-EUBtdPHbdnHmvn1m3P1DzrHTdnWf" target="_blank" class="-highlight">high歌</a>.mp4");