gpt4 book ai didi

java - 无法访问 MS Project Server 2013 REST API 服务器 - 授权错误

转载 作者:行者123 更新时间:2023-11-30 03:28:53 25 4
gpt4 key购买 nike

我使用 Project Online 与 MS Project Server 2013 一起托管 Sharepoint 2013。当我尝试访问 https://my_company.sharepoint.com/sites/pwa/_api/ProjectData/Projects 时来 self 的 Restful Jersey 客户端,在提供正确的凭据后,我收到状态类型为 403 的响应。与响应的文本正文对应的字符串是以下 xml:

<?xml version="1.0" encoding="UTF-8"?>  
<m:error xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
<m:code>-2147024891, System.UnauthorizedAccessException</m:code>
<m:message xml:lang="en-US">Access denied. You do not have permission to perform this action or access this resource.</m:message>
</m:error>

我用于验证和访问 Rest API 的代码如下:

String url = "https://myCompany.sharepoint.com/sites/pwa/_api/ProjectData/Projects";
try {
Client client = Client.create();
client.addFilter(new HTTPBasicAuthFilter(username, pass));
WebResource webResource = client.resource(url);
ClientResponse response = (ClientResponse)webResource.type(MediaType.APPLICATION_ATOM_XML).get(ClientResponse.class);
InputStream inputStream = response.getEntityInputStream();

try {
String output = IOUtils.toString(inputStream);
System.out.println("output: "+output);
} catch(IOException e) {
e.printStackTrace();
}
} catch (Exception e) {
e.printStackTrace();
}

我猜这个问题与 Project Online 使用的 https 协议(protocol)有关,但我不确定。任何帮助将不胜感激。

最佳答案

两件事:1-如果您使用的是 Project Online,则它使用 OAuth,而不是基本身份验证2- 用户所在的组必须启用“访问 Project Server Reporting Service”权限

关于java - 无法访问 MS Project Server 2013 REST API 服务器 - 授权错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29541750/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com