出現的問題:
在虛擬機安裝了FastDFS,並與nginx進行了整合,后台上傳的代碼也寫好了,在上傳圖片時瀏覽器的請求總是發不出去
控制台的提示:
我以為是跨域問題,盡管知道在網關微服務那里已經寫了一個配置類GlobalCorsConfig來處理從http://manage.leyou.com的跨域,攔截一切請求,沒理由再寫一遍啊
沒辦法,再寫一遍試試,果然沒效果,通過debug也發現Config類明顯寫重了,說明此配置類只需要在網關處寫就行。
我虎的試了一遍又一遍,最后才發現,我為什么老是試同一張圖片呢,試試別的吧,找了一張小的圖片才發現,請求終於發出來了,所以是圖片大小的問題
所以,請出一個工具Insomnia,模擬瀏覽器發出請求
這才發現時nginx在作怪
nginx默認的客戶端body大小為1M
413 Request Entity Too Large
解決:根據官方文檔說明,可以在nginx配置文件中http、server、location等配置塊添加配置,
client_max_body_size size; 來調整允許的客戶端上傳文件的body大小。設置為0,表示不限制。
client_max_body_size 10m; 設置為10M
最后終於上傳成功。
得出結論:
1)測試順序應該先拿工具測試,再在瀏覽器端發出請求,這樣能早些看到異常信息。
2)頁面需要優化設置提示信息。