0

嗨,我正在开发一个适用于bayfiles 的android 应用程序,您可以在其中查看、删除和上传文件。他们有一个 API 用于使用他们的 Json API 将文件上传到他们的服务器,但我可以弄清楚如何做到这一点。文档说的是什么:

/文件/上传网址

{错误:“”,uploadUrl:,progressUrl:}

返回的 URL 在有限的时间内有效,您需要为每次上传请求一个新 URL。向“uploadUrl”发出 POST 请求以上传文件。您可以轮询“progressUrl”以获取当前进度。POST 请求需要进行多部分/表单数据编码并包含“文件”字段。cUrl 示例: curl -F "file=@somefile.rar" " http://s6.baycdn.com/upload/93b37e57/4e691e0c/6/0?X-Progress-ID=4e639fcd34CC2F73796CF81679C605643A8F99CF " 注意:为了上传一个文件到您的帐户,您需要先使用 /account/login 登录,然后将 ?session=XYZ 附加到 /file/uploadUrl 成功后,“uploadUrl”将响应一个对象: { error: "", fileId: , size: , sha1: , infoToken: , deleteToken: , linksUrl: ,

我无法理解如何使用 android 来做到这一点。任何帮助深表感谢!

4

1 回答 1

2

您可以使用此代码上传您的文件

private void uploadVideo(String yourfilepath) throws ParseException, IOException {

                HttpClient httpclient = new DefaultHttpClient();

                //post request to send the video 
                HttpPost httppost = new HttpPost("your link to uploadd");
                StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
                StrictMode.setThreadPolicy( policy);
                FileBody video_file1 = new FileBody(new File(videoPath));
                MultipartEntity reqEntity = new MultipartEntity();
                reqEntity.addPart("your argument that your server take", video_file1);                    
                httppost.setEntity(reqEntity);

                // 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( );
            } 
于 2013-10-09T12:13:29.213 回答