一、前端使用element -ui 的upload組件

:data 表示額外傳遞的參數, :header 表示設置請求頭參數,如,token等, action表示后台api接口的地址

二、 contoller層

因為dubbo 不支持File文件類型的參數,所以轉換成byte[],或者使用hessian協議
Dubbo 缺省協議采用單一長連接和 NIO 異步通訊,適合於小數據量大並發的服務調用,以及服務消費者機器數遠大於服務提供者機器數的情況。
反之,Dubbo 缺省協議不適合傳送大數據量的服務,比如傳文件,傳視頻等,除非請求量很低。
官網:http://dubbo.apache.org/zh/docs/v2.7/user/references/protocol/dubbo/
三、定義服務端暴露的接口

四、 provider端

現在文件只能傳到本地電腦,不能傳到Linux下,下面來實現傳遞到linux服務器上
測試下,在E盤下生成一個cc.pdf的文件

五、linux 安裝ftp組件vsftpd

上次安裝nginx,把selinux關閉了,現在開起selinux,並設置放行nginx
開啟http訪問


六、防火牆開啟21端口

開放端口后需要重啟防火牆

七、創建一個用戶用於登錄

八、給新創建的用戶設置密碼

九、修改selinux
使用下列命令查看selinux狀態
getsebool -a | grep ftp

開啟外網的訪問權限
setsebool -P allow_ftpd_full_access on
setsebool -P tftp_home_dir on

十、 關閉匿名訪問
修改/etc/vsftpd/vsftpd.conf文件(訪問時必須有用戶名和密碼才能訪問):
vim /etc/vsftpd/vsftpd.conf

所以我就不修改了
十一、開啟被動模式
默認是開啟的,但是要指定一個端口范圍,打開vsftpd.conf文件,在最后面加上下列內容
pasv_min_port=30000
pasv_max_port=30999
開放30000-30999端口,並重啟防火牆

修改配置文件后要重啟ftp服務

十二、設置開機啟動vsftpd ftp 服務

十三、修改provider
首先要導入apache 的Commons-net

修改nginx下的default.conf,添加路徑

重啟nginx后,通過http訪問

發現是403,查看下nginx權限

打開nginx.conf文件修改user 權限

把user 的nginx 修改為medical,我在此修改為root,重啟nginx后再用瀏覽器訪問
參考資料:
https://www.cnblogs.com/zhaixingzhu/p/12569156.html
https://www.jianshu.com/p/b113ba77d467
https://www.cnblogs.com/aotian/p/13222134.html
https://blog.csdn.net/csdn_lqr/article/details/53333946
https://blog.csdn.net/qq_41905042/article/details/105899450?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~sobaiduend~default-1-105899450.nonecase&utm_term=centos8%E9%98%B2%E7%81%AB%E5%A2%99%E5%85%81%E8%AE%B8%E7%AB%AF%E5%8F%A3&spm=1000.2123.3001.4430
