如何在 java 中使用 HttpURLConnection 发回 JWT 令牌?
How to send back a JWT token with HttpURLConnection in java?
我正在使用 API 来获取一些信息。在每个会话开始时,您需要获取 JWT 令牌才能向 API 发送请求。在我获得令牌并尝试发送请求后,我收到一条错误消息,提示我未经授权,这很公平,因为我没有在请求中附加令牌。问题是 API 的文档没有解释如何做到这一点,而且我也无法在其他任何地方找到它。我该怎么做呢?我这样做是 Java 并且使用的是他们自己的 HttpURLConnection。希望你明白我的意思。
在此先感谢您!
这取决于 web-service (API) 希望如何表示令牌。
常见的有:
- HTTP 请求 headers(XHR 请求的问题)
- 查询参数(因为 caching/logging 而不是个好主意)
- 表单字段(不是通用的)
- URL 段(因为 caching/logging 是个坏主意)
- 某些以令牌为值的 cookie(透明)或
- 身份验证header(典型)
HTTP RFC 中定义的身份验证 header 通常与 Basic
或 Digest
授权方案一起使用。如果字符串(令牌)验证该令牌的持有者,则使用 "Bearer" 方案(例如在 RFC6750 中为 OAuth2 定义)。
你会用
uc.setRequestProperty("Authorization","Bearer " + jwt);
为此。
我正在使用 API 来获取一些信息。在每个会话开始时,您需要获取 JWT 令牌才能向 API 发送请求。在我获得令牌并尝试发送请求后,我收到一条错误消息,提示我未经授权,这很公平,因为我没有在请求中附加令牌。问题是 API 的文档没有解释如何做到这一点,而且我也无法在其他任何地方找到它。我该怎么做呢?我这样做是 Java 并且使用的是他们自己的 HttpURLConnection。希望你明白我的意思。
在此先感谢您!
这取决于 web-service (API) 希望如何表示令牌。
常见的有:
- HTTP 请求 headers(XHR 请求的问题)
- 查询参数(因为 caching/logging 而不是个好主意)
- 表单字段(不是通用的)
- URL 段(因为 caching/logging 是个坏主意)
- 某些以令牌为值的 cookie(透明)或
- 身份验证header(典型)
HTTP RFC 中定义的身份验证 header 通常与 Basic
或 Digest
授权方案一起使用。如果字符串(令牌)验证该令牌的持有者,则使用 "Bearer" 方案(例如在 RFC6750 中为 OAuth2 定义)。
你会用
uc.setRequestProperty("Authorization","Bearer " + jwt);
为此。