【问题标题】:Retrieve Username:Password Sent by Curl with Spring Boot检索用户名:Curl 使用 Spring Boot 发送的密码
【发布时间】:2015-03-24 00:13:10
【问题描述】:
我正在使用 Spring Boot 编写一个 Web 服务,它允许用户通过 curl 使用 REST 调用来请求数据。目前,用户将使用 curl 提供的基本身份验证进行身份验证。从 Spring 中,我如何检索 curl 发送的用户名:密码。
示例:curl -u user:pass http://localhost:8080/authenticate
我想要 user:pass 对。
【问题讨论】:
标签:
java
rest
curl
spring-boot
【解决方案1】:
我想通了。要获取 curl 使用基本身份验证发送的用户名:密码对,请使用 @RequestHeader 注释和 value="Authorization"。这可用于从 HTTP 标头中的任何字段收集数据。
基本认证登录方式示例:
@RequestMapping(value = "/login", method = RequestMethod.GET)
public String login(@RequestHeader("Authorization") String authorization) { ... }
authorization 变量保存 base64 编码的凭据。您还可以根据需要设置默认值或标记标题。