0
私はユーザー認証のためのコードを書いています。Spring WEB MVC +生成= MediaType.IMAGE_JPEG_VALUE + @ResponseStatus(HttpStatus.FORBIDDEN)= HTTPステータス406
@RestController
public class CurrentUserController {
@PostMapping(value = "update-2fa-secret", produces = MediaType.IMAGE_JPEG_VALUE)
public byte[] update2FaSecret() {
UserEntity user = userRepository.findOne(currentUserId);
if (user.is2FaEnabled() != Boolean.TRUE)
throw new HttpForbiddenException("2fa disabled for current user");
String secret = createNewSecret();
user.setSecret2Fa(secret);
userRepository.save(user);
return createQRCode(secret, user.getEmail());
}
}
と例外:
@ResponseStatus(HttpStatus.FORBIDDEN)
public class HttpForbiddenException extends RuntimeException {
............
}
と例外が発生したとき、私は406のHTTPステータスととせずに、サーバーからの応答を取得2を持つユーザーは、許可は、私が2FA秘密の更新のためのコードを書いて有効に織り込まについて本文(内容)。
なぜこのようなことが起こり、どのように解決するのか分かりません。誰かが私にそれを説明できますか?
406はhttps://stackoverflow.com/questions/14251851/what-is-406-not-acceptable-を参照して、コンテンツ受け入れられないことを意味response-in-httpは、適切なContent-Typeヘッダー –
'@ PostMapping'を追加することができます。あなたはコントローラーメソッドに何を投稿していますか? –
@ロッシ私はここで 'POST 'を使うことに決めました.GETの場合には、Skypeを使ってリンクを提供することができるからです。 –