2012-07-20 57 views
1

我無法發佈我的好問題文檔。 因爲,我是新來的,所以我不能在帖子上添加任何圖片。它太糟糕了。當從android上傳圖像文件到wcf時,圖像文件壞了

無論如何,我試圖解釋沒有圖像。

我發送像android的底部源代碼的圖像文件。它作爲流發送到WCF。它沒有問題。

File file = new File(path); 
FileBody bin = new FileBody(file); 
DefaultHttpClient httpClient = new DefaultHttpClient();   
HttpPost postRequest = new HttpPost(this.SERVICE_URI); 
MultipartEntity reqEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE); 
reqEntity.addPart("imageData", bin); 
postRequest.setEntity(reqEntity); 
HttpResponse response = httpClient.execute(postRequest); 

當我想在服務器上看到上傳的文件時,widows無法打開。 首先,我打開原始文件屬性。我可以看到圖像的所有屬性,如寬度,高度,dpi。

但是,當我打開上傳的圖像文件屬性,我只能看到文件的大小。 然後我想看看notepade上的文件。 原始文件和上傳文件之間存在差異。 也就是說

--kpKP7FRpS5aYCWRNH0NHd0tGRj7hs2QYhVai_ 
Content-Disposition: form-data; name="imageData"; filename="ty-uz.jpg" 
Content-Type: application/octet-stream 

然後我看到一個標籤上也文件的底部,--kpKP7FRpS5aYCWRNH0NHd0tGRj7hs2QYhVai _--

的Android添加原始圖像文件中的標籤在發送前,然後我看不到它作爲圖像。 那麼問題是什麼?我在Silverlight應用程序上使用相同的WCF,IT運行得非常好。沒問題。圖像文件上傳orginialy。

但我的android應用程序在圖像文件中添加標籤。問題是什麼?

謝謝你現在...

+0

我一直在等你的好解決方案:) – Conqueror 2012-07-21 01:16:27

+0

解決方案就在這裏。 http://antscode.blogspot.com/2009/11/parsing-multipart-form-data-in-wcf.html – Conqueror 2012-07-25 15:15:09

回答

2

我也有同樣的問題。我已經對文件的客戶端大小做出了響應,然後在上傳到服務器時看到文件的大小大於客戶端中的文件,並且它已被打破。

我覺得數據已經修改正在發送數據到服務器。因此,在客戶端應用時將文件上傳到wcf服務的方式不正確。你可以參考一個same topic here