我使用springfox 2.9.2我有这样的api:
@Api(tags = "Users")
@RestController
@RequestMapping("users")
public class UsersController {
@ApiOperation(value = "Creates a user")
@ApiResponses(value = {
@ApiResponse(code = 201, message = "user created"),
@ApiResponse(code = 401, message = "not authorized")})
@PostMapping(value = "/add")
public ResponseEntity addUser(@Valid @RequestBody UserDTO userDTO) {
...
}
女巫来自身份验证服务器。我尝试在swagger中首次调用此服务器,并将其传递给像上面这样的控制器请求。所以我做
@Bean
public Docket api() {
final String swaggerToken = "";
return new Docket(DocumentationType.SWAGGER_2)
@Bean
public .select()
.apis(RequestHandlerSelectors.basePackage("com.mbv.coros.notification.controller"))
.paths(PathSelectors.any())
.build()
.apiInfo(apiEndPointsInfo())
.securitySchemes(Arrays.asList(securityScheme()))
.securityContexts(Arrays.asList(securityContext()))
.useDefaultResponseMessages(false);
}
private SecurityScheme securityScheme() {
GrantType grantType = new ResourceOwnerPasswordCredentialsGrant(AUTH_SERVER + "/token");
SecurityScheme oauth = new OAuthBuilder().name("spring_oauth")
.grantTypes(Arrays.asList(grantType))
.scopes(Arrays.asList(scopes()))
.build();
return oauth;
private SecurityContext securityContext() {
return SecurityContext.builder()
.securityReferences(defaultAuth())
.build();
}
List<SecurityReference> defaultAuth() {
AuthorizationScope authorizationScope
= new AuthorizationScope("global", "accessEverything");
AuthorizationScope[] authorizationScopes = new AuthorizationScope[1];
authorizationScopes[0] = authorizationScope;
return Lists.newArrayList(
new SecurityReference("JWT", authorizationScopes));
}
在Swagger ui上,授权调用成功返回了令牌,但它没有将令牌添加到请求头中。它会产生
curl -X GET "http://localhost:8080/users/get" -H "accept: */*"
如果我像这样设置令牌:
.securitySchemes(Arrays.asList(apiKey()))
private ApiKey apiKey() {
return new ApiKey("JWT", AUTHORIZATION_HEADER, "header");
}
据我所知,Swagger仅在您配置令牌时才使用令牌,并且配置是使用Swagger UI页面右上角的“授权”按钮完成的。
因此,理想情况是:
>
触发返回令牌的身份验证调用
复制令牌;点击“授权”按钮,将JWT令牌粘贴到“不记名”中
在此之后,所有后续调用都应使用此令牌,直到您按logout。
我有一个请求URI和一个令牌。如果我使用: 等等,我得到一个200并查看相应的JSON数据。所以,我安装了请求,当我试图访问这个资源时,我得到了一个403,可能是因为我不知道传递该令牌的正确语法。有人能帮我弄清楚吗?这就是我所拥有的: 我已经试过了: 但这些都不管用。
我与React、Express、MongoDB的应用程序。 我想为Axios post请求传递带有标头的身份验证令牌。 但是,当我试图通过它,得到403错误(禁止)。 本地存储 我正在从本地存储中检索所有身份验证数据 Axios。邮递 我在这里调用axios post请求 API头和响应 这是我从浏览器中得到的响应 我的邮递员电话打得很好
我正在尝试连接到FatSecret API。这是他们为oauth2授权提供的留档链接:https://platform.fatsecret.com/api/Default.aspx?screen=rapiauth2#using-token-api 我已经完成了第一步和第二步,现在我被困在第三步。我已经设法用“application/json”更新了标题,但我不确定我的调用是否包括我创建的令牌。我得
我们不允许寻求书籍、工具、软件库等推荐的问题。你可以编辑这个问题,以便用事实和引用来回答。 我正在通过DRF(Django-rest-framework)实现令牌认证。到目前为止,我知道在令牌认证中,您用服务器已经为每个用户生成的令牌来交换您的凭证。然后,您将该令牌放在API的每个请求头中,而不用担心cookies。 现在我知道如何生成令牌并写入视图以进行身份验证和颁发令牌。但是,我还没有弄清楚如
我正在尝试从这个 API 调用中创建“UUID”,我正在使用 axios 和 vue.js。这是我的源代码。 但不幸的是,我得到了 在'访问XMLHttpRequesthttps://www.uuidtools.com/api/generate/v1'从原点'http://localhost:8080'已被CORS策略阻止:对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“access c
试图让OAuth2谷歌登录工作,这是我的应用程序发出的原始请求: : : : : 这是回应: 状态: null 对此的帮助将不胜感激。我试图在我的应用程序中设置OAuth2支持的“用X登录”功能,已经让脸书和推特没有问题地工作,也想让谷歌工作,但如果我不能解决这个问题,我恐怕我将不得不放弃谷歌Auth。