我需要使用WCF rest服務發送一個字節的arrray文件。我必須在Android中使用HttpPost方法發送數據。我使用的代碼給出的狀態爲HTTP/1.1 400錯誤請求錯誤。Android將文件作爲ByteArray上傳到WCF REST服務
private final static String URI = "http://192.168.1.15/QueryService/Import/Test";
final HttpPost request = new HttpPost(URI);
final HttpClient httpClient = new DefaultHttpClient();
final ByteArrayEntity entity = new ByteArrayEntity(fileToBytes(pathToOurFile));
entity.setContentType("application/octet-stream");
entity.setChunked(true);
request.setEntity(entity);
final HttpResponse hr = httpClient.execute(request);
final StatusLine status = hr.getStatusLine();
httpClient.getConnectionManager().shutdown();
我使用Fiddler,但它沒有顯示我的應用程序提出的http請求。我也將模擬器代理更改爲fiddler ip地址。當我通過模擬器瀏覽任何網站時,它會顯示在提琴手中,但它不會在提琴手中顯示我的應用程序請求。對於StringEntity也是相同的代碼工作,但不會在Fiddler中顯示任何進程。 – saini 2011-12-23 10:49:04
這聽起來像是一個模擬器問題。您可以使用中間客戶端輕鬆攔截請求。過去,我已成功使用過http://code.google.com/p/tcpmon/。 – kgiannakakis 2011-12-23 11:06:55
我可以將請求發送到服務,但似乎我發送的請求不是我必須通過Web服務接收的正確格式。另外我嘗試通過multipartentity以流格式發送數據,但沒有得到任何響應。 – saini 2011-12-30 08:22:32