有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何将文件上载到Sharepoint?

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和令牌是正确的。 它成功地创建了一个空文件。 但正如我提到的,反应状态是400Bad Request

我不确定下面这节课出了什么问题

Sharepoint指南here

我的班级抄袭了here

截图here


共 (1) 个答案

  1. # 1 楼答案

    请遵循Sharepoint指南here