Rest Curl Post请求将.zip文件上载到Sharepoint返回“;下载时压缩(压缩)文件夹无效

Rest Curl Post请求将.zip文件上载到Sharepoint返回“;下载时压缩(压缩)文件夹无效,rest,curl,sharepoint,upload,zip,Rest,Curl,Sharepoint,Upload,Zip,我有一个curl Post请求,试图将最新文档上载到我们的Sharepoint。它似乎工作正常,我发送的文件是有效的,并且在发送之前可以正常打开。一旦它到达sharepoint,文件大小是相同的,但当我下载时,它似乎已损坏,无法打开 我尝试过手动将zip文件上传到Sharepoint,这样效果很好 我还浏览了互联网,寻找解决问题的方法,但我什么也找不到 curl-X柱 "" -H“接受:/”-H“内容类型:多部分/表单数据”-F“文件=@Test.zip;类型=应用程序/x-zip-compre

我有一个curl Post请求,试图将最新文档上载到我们的Sharepoint。它似乎工作正常,我发送的文件是有效的,并且在发送之前可以正常打开。一旦它到达sharepoint,文件大小是相同的,但当我下载时,它似乎已损坏,无法打开

我尝试过手动将zip文件上传到Sharepoint,这样效果很好

我还浏览了互联网,寻找解决问题的方法,但我什么也找不到

curl-X柱 "" -H“接受:/”-H“内容类型:多部分/表单数据”-F“文件=@Test.zip;类型=应用程序/x-zip-compressed”

我希望sharepoint上的文件在下载后有效并正确打开,但我遇到以下错误

“Windows无法打开该文件夹


压缩(压缩)文件夹“C:\Test.zip”无效。

答案在代码中,虽然文件正在发送,但显然没有正确发送,这导致了损坏

我添加的这一行造成了不同,如下所示

post.setEntity( new FileEntity(file) );
我的完整方法可以在下面找到,如果将来有人需要进一步的信息,请随时发表评论

    public HttpResponse uploadFile( String teamSite,
                                String relativePath,
                                String accessToken,
                                File file ) throws IOException
{
    String fileName = null;
    HttpClient client = HttpClientBuilder.create().build();

    fileName = file.getName().replaceAll( " ", "%20" );
    relativePath = relativePath.replaceAll( " ", "%20" );
    teamSite = teamSite.replaceAll( " ", "%20" );

    HttpPost post = new HttpPost( URL );
    post.setHeader( "Accept", "application/json;odata=verbose" );
    post.setHeader( "Authorization", "Bearer " + accessToken );
    post.setEntity( new FileEntity(file) ); //This line here
    HttpResponse response = client.execute( post );
    HttpEntity entity = response.getEntity();
    @SuppressWarnings("unused")
    String responseString = EntityUtils.toString( entity, "UTF-8" );

    return response;
}