Play의 플래시 메시지 구현 측면에서 두 가지 방법을 발견했습니다. 이들은 flash(flashKey, flashMessage)
및 flash().put(flashKey, flashMessage)
입니다. 여기서 flashKey
및 flashMessage
은 모두 String
입니다. 차이점은 무엇입니까?PlayFramework에서 flash (a, b)와 flash()의 차이점은 무엇입니까?
0
A
답변
0
flash().put(key, message)
주어진 값을
flash(key, message)
플래시 세션을 업데이트하기위한 인터페이스이다 RequestBuilder 플래시 영역을 추가하기위한 플래시 클래스 인터페이스이다. 후드에서 정확히 new HashMap<>(flash()).put(key, message)
(source here)과 동일하지만 요청 쿠키를 업데이트하는 추가 단계를 수행하는 것처럼 보입니다.
flash(key, message)
을 사용하여 플래시에 대한 모든 업데이트를 유지해야합니다.
+0
값을 추가하고 사용자의 쿠키를 업데이트하십시오. 그렇다면 어떻게이 코드를 해석합니까 (ctx(). flash(). put (flashKey, flashMessage);) 그리고 나서 리디렉션이 수행됩니다. 값을 추가하기 전에 Map에 값이 없다고 가정하므로 리디렉션 페이지에는 값을 사용할 수밖에 없습니다. –
어디에서'flash(). put'을 볼 수 있습니까? https://www.playframework.com/documentation/2.2.x/ScalaSessionFlash#Flash-scope – tgk
oh java - https://github.com/playframework/playframework/blob/d43e3e48e7ba6cd1551e3726bd3583a7b13563a2/framework/src/play/ 즉, flash(). put (key, message)'는 단지 flash 스코프에 주어진 값을 추가하는 반면'flash (key, message)'는 다음과 같이 할 수 있습니다 : src/main/java/play/mvc/Http.java # L2011 – tgk