검색 연동 프론트엔드 설치 가이드

2
스크립트 설치하기 (Install)
<head>
<!-- ... 기존 헤더 내용 ... -->
<!-- genser 스크립트 설치 코드 시작 -->
<script type="text/javascript">
(function (a, i, u, e, o) {
a[u] = a[u] || function () { (a[u].q = a[u].q || []).push(arguments) };
})(window, document, "genser");
// 발급 받은 서비스 키를 입력하세요
genser("serviceKey", "발급 받은 서비스 키");
genser("siteType", "custom");
</script>
<script charset="utf-8" src="//static.groobee.io/dist/g2/genser.init.min.js"></script>
<!-- genser 스크립트 설치 코드 끝 -->
</head>3
검색 결과 호출하기 (Search)
검색 호출(searchProducts)
genser.call('searchProducts', {
instanceKey: 'instanceKey', // 필수: 어드민에서 생성한 인스턴스 키
queryText: '상품 검색어', // 필수: 사용자 입력 검색어
})
.success((res) => {
console.log(res); // 검색 결과 데이터 반환 (아래 응답 구조 참고)
})
.error((err) => {
console.error(err); // 오류 발생 시
});항목
타입
필수
설명
응답 데이터 구조(Response)
1. 상품 정보(SEARCH)
{
"requestId": "검색어에 대한 ID",
"type": "SEARCH",
"products": [
{
"code": "상품 코드",
"name": "상품 이름",
...
},
{
"code": "상품 코드",
"name": "상품 이름",
...
},
],
"facet": {},
"nextPageToken": ''
}항목
타입
필수
설명
2. 검색 결과 설명(SUMMARY)
{
"requestId": "검색어에 대한 ID",
"type": "SUMMARY",
"summary": "요약 내용 텍스트"
}항목
타입
필수
설명
3. 연관 키워드(KEYWORDS)
{
"requestId": "검색어에 대한 ID",
"type": "KEYWORDS",
"keywords": ["키워드1", "키워드2"]
}항목
타입
필수
설명
4. 제안 질문(QUESTIONS)
{
"requestId": "검색어에 대한 ID",
"type": "QUESTIONS",
"questions": [
"질문 내용 1",
"질문 내용 2"
]
}항목
타입
필수
설명
4
로그 데이터 수집하기 (Analytics)
노출 (DI)
genser.call('DI', {
instance: { key: 'instanceKey' }, // 인스턴스 키
goods: [
{
code: '상품 코드', // searchProducts 결과의 code
name: '상품 이름', // searchProducts 결과의 name
},
...
], // 상품 정보
requestId: '검색어에 대한 ID', // searchProducts 결과에서 응답 받은 requestId
})
.success((res) => {
console.log(res); // 정상 callback
})
.error((err) => {
console.error(err); // 오류 callback
});
항목
타입
필수
설명
클릭 (CL)
genser.call('CL', {
instance: { key: 'instanceKey' }, // 인스턴스 키
goods: [
{
code: '상품 코드', // searchProducts 결과의 code
name: '상품 이름', // searchProducts 결과의 name
},
...
], // 상품 정보
requestId: '검색어에 대한 ID', // searchProducts 결과에서 응답 받은 requestId
})
.success((res) => {
console.log(res); // 정상 callback
})
.error((err) => {
console.error(err); // 오류 callback
});
항목
타입
필수
설명
Last updated
Was this helpful?


