유틸리티 메서드(Java)
마지막 업데이트: 2024년 7월 20일
- 주제:
- APIs/SDKs
작성 대상:
- 개발자
이러한 도우미 메서드는 컨트롤러 간에 재사용할 수 있으며 별도의 유틸리티 클래스로 이동할 수 있습니다.
메서드
public class TargetRequestUtils {
public static Context getContext(HttpServletRequest request) {
Context context = new Context()
.channel(ChannelType.WEB)
.timeOffsetInMinutes(330.0)
.address(getAddress(request));
return context;
}
public static Address getAddress(HttpServletRequest request) {
Address address = new Address()
.referringUrl(request.getHeader("referer"))
.url(request.getRequestURL().toString());
return address;
}
public static List<TargetCookie> getTargetCookies(Cookie[] cookies) {
if (cookies == null) {
return Collections.emptyList();
}
return Arrays.stream(cookies)
.filter(Objects::nonNull)
.filter(cookie -> CookieUtils.getTargetCookieNames().contains(cookie.getName()))
.map(cookie -> new TargetCookie(cookie.getName(), cookie.getValue(), cookie.getMaxAge()))
.collect(Collectors.toList());
}
public static HttpServletResponse setCookies(List<TargetCookie> targetCookies,
HttpServletResponse response) {
targetCookies
.stream()
.map(targetCookie -> new Cookie(targetCookie.getName(), targetCookie.getValue()))
.forEach(cookie -> {
cookie.setPath("/");
response.addCookie(cookie);
});
return response;
}
public static List<MboxRequest> getMboxRequests(String... name) {
List<MboxRequest> mboxRequests = new ArrayList<>();
for (int i = 0; i < name.length; i++) {
mboxRequests.add(new MboxRequest().name(name[i]).index(i));
}
return mboxRequests;
}
public static PrefetchRequest getPrefetchRequest() {
PrefetchRequest prefetchRequest = new PrefetchRequest();
ViewRequest viewRequest = new ViewRequest();
prefetchRequest.setViews(Arrays.asList(viewRequest));
return prefetchRequest;
}
}
Target
- Adobe Target 개발자 안내서
- 시작
- 클라이언트측 구현
- 개요: 클라이언트측 웹용 Target 구현
- Adobe Experience Platform Web SDK 구현 개요
- at.js 구현
- at.js 개요
- at.js 작동 방식
- at.js를 배포하는 방법
- 온디바이스 의사 결정
- at.js 함수
- at.js 함수 개요
- adobe.target.getOffer()
- adobe.target.getOffers() - at.js 2.x
- adobe.target.applyOffer()
- adobe.target.applyOffers() - at.js 2.x
- adobe.target.triggerView() - at.js 2.x
- adobe.target.trackEvent()
- mboxCreate() - at.js 1.x
- targetGlobalSettings()
- mboxDefine() 및 mboxUpdate() - at.js 1.x
- targetPageParams()
- targetPageParamsAll()
- registerExtension() - at.js 1.x
- sendNotifications() - at.js 2.1
- at.js 사용자 지정 이벤트
- Adobe Experience Cloud Debugger를 사용하여 at.js 디버그
- Target에서 클라우드 기반 인스턴스 사용
- at.js FAQ
- at.js 버전 세부 사항
- at.js 1.x에서 at.js 2.x로 업그레이드
- at.js 쿠키
- 사용자 에이전트 및 클라이언트 힌트
- 글로벌 mbox 이해
- 서버 측 구현
- 하이브리드 구현
- Recommendations 구현
- 모바일 앱 구현
- 전자 메일 구현
- API 안내서
- 구현 패턴