簡體   English   中英

如何從Java中的URL獲取圖像大小

[英]How to get image size from URL in java

我想從URL獲取圖像大小。 我的源代碼在本地工作,但是aws Ubuntu服務器將返回-1。 有什么問題?

URL url=new URL("https://www.bithumb.com/resources/img/comm/sp_coin.png?v=180510");

int image_size = url.openConnection().getContentLength();

System.out.println("mage size:: "+image_size);

如果服務器未使用有效的Content-Length標頭進行響應,則getContentLength返回-1 或者,您始終可以獲取返回數據的大小:

size = IOUtils.toByteArray(url.openStream()).length;

使用Apahe Commons IO IOUtils

有什么問題?

很難說。 但是,最終要由Web服務(不是Ubuntu或AWS)的實現來在響應中包括內容長度。

因此,如果您想找出原因 (並加以解決),則需要檢查(您的?)Web服務的實現,以及它如何創建響應。

正如@jspcal指出的,您可以解決此問題。 但是,為此,您將需要(至少)從響應數據流中讀取整個圖像。 這是否可行/有效的解決方案取決於您打算/何時使用內容長度。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM