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

Twitter OAUTH在JSON中访问令牌响应

吉俊德
2023-03-14

我正在使用Twitter的REST API授权一个应用程序。我刚刚用

https://api.twitter.com/oauth/authorize

并从重定向uri获取了oauth_验证程序。

然后我就用了

https://api.twitter.com/oauth/access_token

获取访问令牌。

问题是,我从这个方法得到的响应格式是text/plain。就像

oauth_token=783897656863051776-5hQfcJTv4FzFpPcyVRbnjPUbJXR29

我的问题是如何获得application/json格式的响应。任何帮助都将不胜感激!!!


共有1个答案

司寇光华
2023-03-14

您需要像解析application/x-www-form-urlencoded content一样解析它,任何带有HTTP客户端库的语言都应该提供此功能。但目前尚不清楚您使用的是什么语言和库。

此示例使用joauth库解析

  protected static Map<String, String> parseTokenMap(String tokenDetails) {
    KeyValueHandler.SingleKeyValueHandler handler =
        new KeyValueHandler.SingleKeyValueHandler();

    KeyValueParser.StandardKeyValueParser bodyParser =
        new KeyValueParser.StandardKeyValueParser("&", "=");
    bodyParser.parse(tokenDetails, Collections.singletonList(handler));

    return handler.toMap();
  }
 类似资料:
  • 如果访问令牌请求是有效的且被授权,授权服务器如5.1节所述颁发访问令牌以及可选的刷新令牌。刷新令牌不应该包含在内。 如果请求因客户端身份验证失败或无效,授权服务器如5.2节所述的返回错误响应。 一个样例成功响应: HTTP/1.1 200 OK Content-Type: application/json;charset=UTF-8 Cache-Control: no-store Pragma:

  • 如果访问令牌请求是有效的且被授权,授权服务器如5.1节所述颁发访问令牌以及可选的刷新令牌。如果请求客户端身份验证失败或无效,授权服务器如5.2节所述的返回错误响应。 一个样例成功响应: HTTP/1.1 200 OK Content-Type: application/json;charset=UTF-8 Cache-Control: no-store Pragma: no-cache { "

  • 如果资源所有者许可访问请求,授权服务器颁发访问令牌,通过使用按附录B的“application/x-www-form-urlencoded”格式向重定向URI的片段部分添加下列参数传递访问令牌至客户端: access_token 必需的。授权服务器颁发的访问令牌。 token_type 必需的。如7.1节所述的颁发的令牌的类型。值是大小写不敏感的。 expires_in 推荐的。以秒为单位的访问令

  • 如果访问令牌请求是有效的且被授权,授权服务器如5.1节所述颁发访问令牌以及可选的刷新令牌。如果请求客户端身份验证失败或无效,授权服务器如5.2节所述的返回错误响应。 一个样例成功响应: HTTP/1.1 200 OK Content-Type: application/json;charset=UTF-8 Cache-Control: no-store Pragma: no-cache { "

  • 访问令牌是授权服务器分配的一种令牌。 如果访问令牌请求有效且授权,则授权服务器发出访问令牌。 如果令牌访问请求无效或未经授权,则授权服务器返回错误响应。 访问令牌由授权服务器在接受客户端应用程序发送的客户端ID,客户端密码和授权代码时提供。 一旦用户接收到令牌,就可以将其发送到诸如Facebook,Google等的访问资源以访问与登录用户相关的系统中的资源。 访问令牌响应包含以下JSON结构。 {