gpt4 book ai didi

java - 如何在 Linkedin API 中请求直接赞助内容发布者角色?

转载 作者:行者123 更新时间:2023-12-05 06:58:11 24 4
gpt4 key购买 nike

当我尝试发出 GET 请求以使成员成为组织的直接赞助内容发布者角色时,出现 404 错误。

所以在示例 here 之后,我使用了组织 ID 并且我使用了我想要将 ID 添加到 URL 请求的人。所以我的代码看起来像这样:

    sendRequest(GET, "https://api.linkedin.com/v2/organizationAcls/" + URLEncoder.encode("(organization:urn:li:organization:" + organization + ",role:DIRECT_SPONSORED_CONTENT_POSTER,roleAssignee:urn:li:person:" + roleAssignee +")" , StandardCharsets.UTF_8.toString()), null);

使用sendRequest方法:

    public String sendRequest(String method, String url, String parameters) throws ExternalApiException, IOException{
URL obj = new URL(url);
HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();

// add request header
con.setRequestMethod(method);

con.setRequestProperty("Authorization", "Bearer " + token);
if (method == POST)
//Removed POST logic as its irrelevant
int responseCode = con.getResponseCode();

BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();

return response.toString();
}

最后,URL 后编码示例如下,organization = 1234567 AND roleAssignee = abcDEfg:

https://api.linkedin.com/v2/organizationAcls/%28organization%3Aurn%3Ali%3Aorganization%3A1234567%2Crole%3ADIRECT_SPONSORED_CONTENT_POSTER%2CroleAssignee%3Aurn%3Ali%3Aperson%3AabcDEfg%29

更新 1 (11/10/2020):想要添加返回的响应正文。如前所述,错误代码为 404,返回的响应正文为:

{"serviceErrorCode":0,"message":"Resource organizationAcls does not exist","status":404}

最佳答案

所以我与 Linkedin 技术支持成员交谈,他们的文档中似乎有错误。

正确的调用需要一个PUT请求。

此外,请求的 URL 是:https://api.linkedin.com/v2/organizationAcls/(organization:urn%3Ali%3Aorganization%3AXXXXXXX,role:DIRECT_SPONSORED_CONTENT_POSTER,roleAssignee:urn%3Ali%3Aperson%3AXXXXXXX) .其中 'XXXXXXX' 需要是关联的组织 ID 和关联的人员 ID。

最后,作为请求的一部分,需要传入一个请求体。请求体是一个包含以下属性的JsonObject

  1. 状态
  2. 角色
  3. roleAssignee
  4. 组织

对于state,唯一可能的值是REQUESTED。对于 role,唯一可能的值是 DIRECT_SPONSORED_CONTENT_POSTER。对于role assignee,它是"urn:li:person:"+ roleAssignee,您希望使用添加到以下组织的用户的id。最后,对于 organization,它是 "urn:li:organization:"+ organization,您希望将上述用户添加到的组织的 ID。

关于java - 如何在 Linkedin API 中请求直接赞助内容发布者角色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64699581/

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