This is my code.
I have Http 400 error, can someone help me?
HttpClient httpClient; HttpPost httpPost; HttpResponse response; HttpContext localContext; FileEntity tmp = null; String ret = null; httpClient = new DefaultHttpClient( ); httpClient.getParams().setParameter( ClientPNames.COOKIE_POLICY, CookiePolicy.RFC_2109) ; httpPost = new HttpPost(url); tmp = new FileEntity( data,"UTF-8" ); httpPost.setEntity( tmp ); httpPost.setHeader( "Content-Type", "multipart/form-data" ); httpPost.setHeader( "access_token", facebook.getAccessToken( ) ); httpPost.setHeader( "source", data.getAbsolutePath( ) ); httpPost.setHeader( "message", "Caption for the photo" ); localContext = new BasicHttpContext( ); response = httpClient.execute( httpPost,localContext );
bobince, thanks, that is my new identifier, I will try to put OAuth in the connection header.
And this is my old code, I will update it soon.
private void uploadPicture( ) throws ParseException, IOException { HttpClient httpclient = new DefaultHttpClient(); httpclient.getParams( ).setParameter( CoreProtocolPNames.PROTOCOL_VERSION, HttpVersion.HTTP_1_1 ); HttpPost httppost = new HttpPost( "https://graph.facebook.com/me/photos" ); File file = new File( sdpicturePath ); // DEBUG Log.d( "TSET", "FILE::" + file.exists( ) ); // IT IS NOT NULL Log.d( "TEST", "AT:" + fbAccessToken ); // I GOT SOME ACCESS TOKEN MultipartEntity mpEntity = new MultipartEntity( ); ContentBody cbFile = new FileBody( file, "image/png" ); ContentBody cbMessage = new StringBody( "TEST TSET" ); ContentBody cbAccessToken = new StringBody( fbAccessToken ); mpEntity.addPart( "access_token", cbAccessToken ); mpEntity.addPart( "source", cbFile ); mpEntity.addPart( "message", cbMessage ); httppost.setEntity( mpEntity ); // DEBUG System.out.println( "executing request " + httppost.getRequestLine( ) ); HttpResponse response = httpclient.execute( httppost ); HttpEntity resEntity = response.getEntity( ); // DEBUG System.out.println( response.getStatusLine( ) ); if (resEntity != null) { System.out.println( EntityUtils.toString( resEntity ) ); } // end if if (resEntity != null) { resEntity.consumeContent( ); } // end if httpclient.getConnectionManager( ).shutdown( ); } // end of uploadPicture( )
android upload facebook multipartform-data
Joseph Jul 29 '10 at 9:17 2010-07-29 09:17
source share