【问题标题】:How can Upload a file to Sharepoint?如何将文件上传到 Sharepoint?
【发布时间】:2021-08-29 05:10:30
【问题描述】:
private void uploadDocToSharePoint(String token, Resource resource, String folderName) {
    try {
        String uploadUrl = Utils.SHARE_POINT_DOMAIN + "_api/web/getfolderbyserverrelativeurl('" + folderName + "')/files/add(url='" + resource.getFilename() + "', overwrite=true)";
        URL url = new URL(uploadUrl);
        HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();

        // Set Header
        httpConn.setDoOutput(true);
        httpConn.setDoOutput(true);
        httpConn.setRequestMethod("POST");
        httpConn.setRequestProperty("Authorization", "Bearer " + token);
        httpConn.setRequestProperty("accept", "application/json; odata=verbose");
        httpConn.setRequestProperty("Content-Type", "application/xml");

        OutputStream os = httpConn.getOutputStream();
        OutputStreamWriter osw = new OutputStreamWriter(os, StandardCharsets.UTF_8);
        osw.write("Just Some Text");
        osw.flush();
        osw.close();
        os.close();  //don't forget to close the OutputStream
        httpConn.connect();


        System.out.println(httpConn.getResponseCode());
        System.out.println(httpConn.getResponseMessage());
        String result;
        BufferedInputStream bis = new BufferedInputStream(httpConn.getInputStream());
        ByteArrayOutputStream buf = new ByteArrayOutputStream();
        int result2 = bis.read();
        while(result2 != -1) {
            buf.write((byte) result2);
            result2 = bis.read();
        }
        result = buf.toString();
        System.out.println(result);


    } catch (Exception e) {
        System.out.println("Error while reading file: " + e.getMessage());
    }
}

httpConn.getResponseCode()400httpConn.getResponseMessage()Bad Request

我已经使用在 Postman 上的此类中生成的 URL 测试了此请求。 它工作正常。 所以我确信 url 和 token 是正确的。 它成功创建了一个空文件。 但正如我提到的,响应状态是400Bad Request

我不确定下面的课程有什么问题

分享点指南here

我的课从here复制

截图here

【问题讨论】:

  • “Content-Type = application/xml”与“只是一些文本”?
  • 你是什么意思? @DirkDeyne
  • 我在屏蔽“Content-Type = application/xml”后尝试过。但同样的问题
  • 添加截图
  • 请回复@DirkDeyne

标签: java spring-boot post request httpurlconnection


【解决方案1】:

请关注 Sharepoint 指南here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-02
    • 2019-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多