在 Restlet 中向 header 添加身份验证令牌

Adding an authentication token to header in Restlet

我正在尝试在 java 中使用 Restlet 进行 API 调用,但是当我 运行 我的代码时,我得到一个 org.restlet.resource.ResourceException: Unauthorized (401) - 请求需要用户身份验证

API 调用的格式如下 shell:curl "<api_url>" \ -H "Authorization: Bearer <api_token_here>"

但是我不确定如何在 Restlet 中添加此授权 header,因为您无法使用 .getRequest().getHeaders().add();

添加 header

此外,我尝试设置挑战响应,但这似乎也不起作用。

        API = new ClientResource(RequestURL);
        API.setProtocol(Protocol.HTTPS);

        ChallengeResponse AuthHeader = new ChallengeResponse(ChallengeScheme.CUSTOM);
        AuthHeader.setRawValue("Authorization: Bearer " + APIKey);

        API.getRequest().setChallengeResponse(AuthHeader);

        API.get();

我似乎已经用以下代码解决了这个问题:

    ChallengeResponse AuthHeader = new ChallengeResponse(ChallengeScheme.HTTP_OAUTH_BEARER); 
    AuthHeader.setRawValue(APIKey);
    AuthHeader.setIdentifier("Bearer");
    API.setChallengeResponse(AuthHeader);