当前位置: 首页 > 知识库问答 >
问题:

如何使用放心自动获取承载令牌

帅博简
2023-03-14

我目前正在使用Postman来生成承载令牌,我正在自动化测试中使用它。现在,我也想使用Java中的REST Assured来自动化承载令牌生成过程。请帮帮我.谢了。

Response response =
      given()
          .auth()
          .oauth(
              "n0pCrq5SPgraZ3CyY0Nd",
              "xvvx-LVd5dszLi9OO_1qjbU4eUQ4dXwLrDZN7oioSITr_EXrgsyyOvPvZmv85Ew2",
              "",
              "",
                  "HMAC-SHA256")
          .when()
          .get(url)
          .then()
          .contentType(ContentType.JSON)
          .extract()
          .response();

共有1个答案

汪深
2023-03-14

这起作用了。谢谢@Wilfred Clement。

public static String getOauthToken(String consumerKey, String consumerSecret, String endpoint ) {

log.info("GET ACCESS TOKEN=" + endpoint);
URI uri = null;
try {
  uri = new URI(endpoint);
} catch (URISyntaxException e) {
  log.error("Not proper oauth url=" + endpoint);
  throw new RuntimeException(e);
}

ValidatableResponse res = given()
        .header("Content-Type", "application/json")
        .auth().oauth(consumerKey,
                consumerSecret,
                "",
                "")
        .body("{\"grantType\": \"client_credentials\"}").when().post(uri).then();

int responseCode = res.extract().statusCode();

if (HttpURLConnection.HTTP_OK == responseCode) {
  String token = res.extract().jsonPath().get("accessToken").toString();
  log.info("Auth token=" + token);
  return token;
} else {
  String msg = "Access token retrieve failed. Http response code=" + responseCode;
  log.error(msg);
  throw new RuntimeException(msg);
}

}

 类似资料:
  • 我对使用Rest-Assured、Java和Api测试还不熟悉,所以请对我温柔一点。当我使用rest-assured测试一个使用承载身份验证的api时,测试失败,导致:-java。网ConnectException:连接被拒绝:连接 我知道这个问题可能与身份验证有关,但我不确定如何使用“Bearer”。我四处搜索,认为我需要用我的用户名和密码提出一个初始请求。然后获取一个令牌,用于承载身份验证。请

  • 使用邮递员,我可以毫无问题地获得令牌。如果单击和,我会得到以下代码片段: 当我尝试在Rest Assured中对请求建模时,我得到了一个400错误,但不清楚为什么: 我哪里出了问题很明显吗?是否应该将键/值传递到中?

  • 我可以使用类似的代码和承载令牌进行GET,但似乎无法完成POST。 当我将Json、URL和承载令牌复制/粘贴到Postman中时,效果非常好。但从C#执行此操作时,会出现以下错误: “状态代码:400,原因短语:'错误请求',版本:1.1,内容:System.Net.Http.StreamContent,标题:{传输编码:分块连接:保持活动预期CT:最大年龄=604800,报告uri=”http

  • 我正在Laravel应用程序中使用twitter API。在我的应用程序中,当用户插入url时,我想获得用户名和个人资料图片。我找了很多,但没找到。对于用户信息,我必须让用户登录到twitter,并与我的应用程序连接以获取访问令牌。我只想使用应用程序授权,这样用户就不需要登录twitter。我发现,通过这个搜索API可以搜索带有承载令牌的推文 有什么API可以让我使用URL获取用户屏幕名称吗? 我

  • 我有一个asp。net应用程序,带有前端和web api部分。我希望移动应用程序能够使用受保护的web apiendpoint。这意味着我需要登录并在本机移动应用程序中处理身份验证令牌。 现在,登录到asp.net应用程序的唯一方法是通过默认asp.net /Account/Login页面。当我发布到登录终结点时,返回的正文只包含我的应用程序的html。令牌然后由asp.net.存储在cookie

  • 在Postman中,我可以使用 回调URL Auth URL 客户端ID 我如何使用C#代码做同样的事情?