[解決済み] postmanでサポートされていないメディアタイプ
2022-03-01 18:22:22
質問
oauth2とjwtでspring securityを実装しています。 以下は私のログイン関数です。
function doLogin(loginData) {
$.ajax({
url : back+"/auth/secret",
type : "POST",
data : JSON.stringify(loginData),
contentType : "application/json; charset=utf-8",
dataType : "json",
async : false,
success : function(data, textStatus, jqXHR) {
setJwtToken(data.token);
},
error : function(jqXHR, textStatus, errorThrown) {
alert("an unexpected error occured: " + errorThrown);
window.location.href= back+'/login_page.html';
}
});
}
そして、下にあるのがコントローラです。
@RequestMapping(value = "auth/secret", method = RequestMethod.POST)
public ResponseEntity<?> createAuthenticationToken(@RequestBody JwtAuthenticationRequest authenticationRequest, Device device) throws AuthenticationException {
System.out.println();
logger.info("authentication request : " + authenticationRequest.getUsername() + " " + authenticationRequest.getPassword());
// Perform the security
System.out.println( authenticationRequest.getUsername()+"is the username and "+authenticationRequest.getPassword());
final Authentication authentication = authenticationManager.authenticate(
new UsernamePasswordAuthenticationToken(
authenticationRequest.getUsername(),
authenticationRequest.getPassword()
)
);
SecurityContextHolder.getContext().setAuthentication(authentication);
logger.info("authentication passed");
// Reload password post-security so we can generate token
final UserDetails userDetails = userDetailsService.loadUserByUsername(authenticationRequest.getUsername());
final String token = jwtTokenUtil.generateToken(userDetails, device);
logger.info("token " + token);
// Return the token
return ResponseEntity.ok(new JwtAuthenticationResponse(token));
}
しかし、postmanでpostリクエストを試したところ、次のように表示されました。
{
"timestamp": 1488973010828,
"status": 415,
"error": "Unsupported Media Type",
"exception": "org.springframework.web.HttpMediaTypeNotSupportedException",
"message": "Content type 'multipart/form-data;boundary=----WebKitFormBoundaryY4KgeeQ9ONtKpvkQ;charset=UTF-8' not supported",
"path": "/TaxiVis/auth/secret"
}
しかし、私が
cosole.log(data)
ajax呼び出しでそれはトークンを印刷します?私は何が間違っているのか理解できませんでした。
どうすればいいですか?
を設定する必要があります。
content-type
をJSON(application/json)としてpostmanに登録してください。
POSTリクエストのbodyに移動して、rawオプションを見つけます。
その右隣にドロップダウンがあるので、JSON (application.json) を選択してください。
関連
-
[解決済み] JsonMappingException: No suitable constructor found for type [simple type, class ]: can't instantiate from JSON object.
-
[解決済み] <mvc:default-servlet-handler />の必要性と用途は何ですか?
-
[解決済み] Junit with Spring - TestContextManager [ERROR] TestExecutionListenerを許可する際に例外をキャッチしました。
-
SpringBootのテスト
-
レスポンスボディとレスポンスエンテイティ
-
[解決済み] java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log
-
[解決済み】PostmanでヘッダーにJWTトークンを入れて送信する。
-
[解決済み] POST JSONが415 Unsupported media typeで失敗する、Spring 3 mvc
-
[解決済み] Springセキュリティフィルタチェーンの仕組み
-
[解決済み] Spring Test & Security: 認証をモック化する方法とは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
FunctionService' タイプのビーンが見つかりませんでした。
-
ERROR StatusLogger Log4j2 の設定ファイルがテストに表示されない
-
互換性のない型.Found:'int',required:'java.lang.String'.
-
[解決済み】Spring MVCとSpring Bootの違い【終了しました
-
[解決済み】IntelliJから実行するときにSpring Bootプロファイルを有効にするにはどうすればよいですか?
-
[解決済み] Spring MVC RESTコントローラでHTTPヘッダ情報にアクセスする方法は?
-
[解決済み] Serviceアノテーションはどこにつけるべきですか?インターフェースか実装か?
-
[解決済み] スコープ("prototype")ビーンスコープで新しいビーンが作成されない
-
[解決済み] Spring MVC Test によるマルチパート POST リクエストの単体テスト
-
[解決済み] YAMLを使ったSpring @PropertySource