2012-04-04 28 views
0

我正在開發一個android應用程序來上傳圖像到快速基數據庫(https://www.quickbase.com)根據快速基礎API,圖像應該以base64格式上傳,並且它應該通過xml格式的post請求發送,並且不允許使用MIME頭和類型(http://www.quickbase.com/api-guide/whnjs.htm)。每個文本數據都會傳送到數據庫,但圖像不會上傳到服務器,這裏是我的代碼,任何人都可以給我一個幫助?android圖像上傳到快速基數據庫

String tempXml = "<?xml version='1.0' ?><qdbapi><udata>mydata</udata>" 
+ "<ticket>6_bg4at2ksw_bzazsh_b_cmti6qddhsrvgqds7cqmgbt32t6wcdkcse2c8j8ypyb</ticket>" 
+ "<apptoken>cwfcy7gdzqrsyncqbi2bn4u4kr</apptoken>" 
+ "<field fid='6'>sample data</field><field fid='7'>sample data</field>" 
+ "<field fid='8'>sample data</field><field fid='9'>sample data</field>" 
+ "<field fid='10'>sample data</field><field fid='12'>sample data</field>" 
+ "<field name='message' filename='testImage.jpg'>" 
+ testImageName + "</field></qdbapi>"; 

DefaultHttpClient httpclient = new DefaultHttpClient(); 
String strURL = "https://www.quickbase.com/db/bgtc5pacu?act=API_AddRecord"; 
HttpPost httpPost = new HttpPost(strURL); 
httpPost.addHeader("Content-Type", "application/xml"); 
StringBuilder sb = new StringBuilder(); 
sb.append(tempXml); 
StringEntity entity = new StringEntity(sb.toString(), "UTF-8"); 
httpPost.setEntity(entity); 
HttpResponse res = httpclient.execute(httpPost); 

回答

0

使用base64類從image的字節數組中獲取base64字符串。

base64.java

方法名稱:encodeBytes(字節[]源)