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

代号一个卷发请求oAuth

何德寿
2023-03-14

我正在尝试从codename one调用Petfinder API。它需要oAuth授权。现在我可以从终端访问API,但我不知道如何从使用Java的codename one调用它。现在我能够从不需要oAuth但需要密钥的API中提取数据。

从终端看起来像这样:

curl-d“grant_type=html" target="_blank">客户端_凭据

{“token_type”:“Bearer”,“expires_in”:3600,“access_token”:“{my access token}”

curl-H“授权:承载{my access token}”获取https://api.petfinder.com/v2/animals?type=dog

共有1个答案

臧威
2023-03-14

你可以用这样的东西。我还没有测试过,所以需要调试:

Rest.post("https://api.petfinder.com/v2/oauth2/token").
    queryParam("grant_type", "client_credentials").
    queryParam("client_id", clientId).
    queryParam("client_secret", clientSecret).
    fetchAsJsonMap(response -> {
    // data is already parsed to Map here
    if(response.getResponseData() != null) {
        accessToken = (String)response.getResponseData().get("access_token");

        // set the auth header for all future requests in this session
        addDefaultHeader("Authorization", "Bearer " + accessToken);
    }
});

请注意,代码假定存在CN类的静态导入。您还可以将令牌存储到Prefrences中,并像我在这里做的那样动态加载/全局设置它,这是一个更完整的示例。

 类似资料:
  • 问题内容: 我目前在PHP上大量使用Curl。每次获取大约100页的结果需要花费大量时间。对于每个请求,我都使用这样的代码 我有什么选择可以加快速度? 我应该如何使用等? 问题答案: 重用相同的cURL处理程序($ ch),而无需运行curl_close。这将加快速度。 使用curl_multi_init并行运行进程。这会产生巨大的影响。

  • 我试图使用Postman而不是Web服务的API文档提供的终端命令来请求数据。 curl命令如下: 我怎么能在邮递员内申请这个?我尝试添加和作为请求参数,但这不起作用

  • 我尽力描述我的处境。我的wicket站点包含list wicket组件,其中每个列表元素都有另一个列表。最低级别列表中的每个元素都有下载某个文件的ajax wicket链接。这一切都很好。我习惯了这种懒散的行为。此行为的方法startDownload在link onClick方法中调用。

  • 我们有很多客户使用我们的应用程序(HR),我们正在使用codenameone构建它,一切都可能正常工作,但今天我们收到了一个客户的问题,其中有一条消息显示包含400错误请求,其他客户正在工作没有任何问题。 该行被赋予400错误请求NetworkManager。getInstance()。addToQueueAndWait(请求) 我们检查了网络监视器并检查了返回json的URL,没有任何问题。 如

  • 如何在JMETER中创建一个测试,该测试将: 总共提出100个请求,但是使 每4次请求站点A和 每5次请求站点B

  • 我想用带有curl请求的API CloudConvert测试一个非常简单的案例。我想用curl请求导入文件EssaificHier.txt。我得到一个状态为“waiting”的Json响应。我不知道这个请求做得好不好。如果有人面临同样的问题,那么在我的代码下面有一些将是很好的,以便解决这个问题。