peton
9월 30, 2022, 2:08오전
1
카카오톡 공유하기가 어제부터 동작하지 않습니다.
웹에서 카카오톡 공유하기 로 보내면 “카카오 서비스 오류 안내” “예상하지 못한 오류가 발생했습니다. 서버의 일시적인 장애이거나 네트워크 문제일 수 있습니다. 해당 오류는 카카오팀에서 확인 및 대응중입니다.” 라고 메세지가 노출됩니다.
기존에 문제가 없었는데 갑자기 나타나며, 카카오팀에서 확인 및 대응중이라는 메세지로 내부 이슈이기 보단 카카오측에서 어떤 작업중이신지 궁금합니다.
코드는 아래 형태입니다.
Kakao.Link.sendDefault({
objectType: ‘feed’,
content: {
title: “제목”,
description: “내용”,
imageUrl: ‘kakao.com ’,
link: {
mobileWebUrl: imageUrl,
webUrl: imageUrl
}
},
buttons: [{
title: ‘웹으로 보기’,
link: {
mobileWebUrl: webUrl,
webUrl: webUrl
}
}]
});
안녕하세요.
확인할 수 있는 URL 제공 부탁드립니다.
서버측에 별다른 이슈가 없어서 클라이언트로 부터 재현해보고자 합니다.
저도 feed 형식으로 보내려고 해보니 동일한 오류가 발생했습니다.
콘솔 로그를 보니 500 에러 로 나옵니다.
참고로 모바일에서는 동일 코드로도 정상동작 하구요.
PC 에서 실행했을 때 에러 가 발생하고 있습니다.
저 코드를 PC 환경에서 실행하면 아래처럼 나옵니다.
(https://accounts.kakao.com/weblogin/account/agree?continue=https%3A%2F%2Fsharer.kakao.com%2Fpicker%2Flink%3Fapp_key%3Dde4b585c7881308d16bdeb5ac1bd4c5f%26short_key%3D1718b60d-0641-4b08-87cf-93c5208b5ff7&service=kakaoshare )
코드는 작성자분 코드와 크게 다르지 않습니다.
<script src="https://t1.kakaocdn.net/kakao_js_sdk/2.0.0/kakao.min.js" integrity="sha384-PFHeU/4gvSH8kpvhrigAPfZGBDPs372JceJq3jAXce11bVA6rMvGWzvP4fMQuBGL" crossorigin="anonymous"></script>
<script src="sns.js"></script>
<button onclick="sns.share('kt')">카카오톡 피드</button>
sns.js
(function(){
function _getData() {
const title = document.querySelector("meta[property^=og][property$=title]").content;
const ment = document.querySelector("meta[property^=og][property$=description]").content;
const image = document.querySelector("meta[property^=og][property$=image]").content;
const url = document.querySelector("meta[property^=og][property$=url]").content;
return {
title : title,
description : ment,
imageUrl : image,
link : {
mobileWebUrl : url,
webUrl : url
}
}
}
function _Kakao(id) {
Kakao.init(id);
Kakao.isInitialized();
function share() {
const data = _getData();
Kakao.Share.sendDefault({
objectType : 'feed',
content : data,
buttons : [
{
title : "자세히 보기",
link : data.link
}
],
installTalk : false
});
}
return {
share : share
}
}
function _Sns() {
const kt = new _Kakao("de4b585c7881308d16bdeb5ac1bd4c5f");
function share(type) {
switch(type) {
case "kt": kt.share(); break;
}
}
return {
share : share
}
}
window.sns = new _Sns();
}());
1개의 좋아요
@sksmsvlxk
자세한 재현 방법 및 안내 감사드립니다
카카오톡 공유하기는 카카오톡에 연결(가입)된 계정으로만 사용가능합니다.
테스트에 사용된 계정은 카카오톡을 사용하지 않는 계정입니다.
이러한 경우 REST-API로 메시지를 보내거나 JS SDK의 Kakao.API.request
를 사용하는 방식으로 메시지를 전송할 때는 -501오류가 리턴되지만, JS SDK의 Kakao.Share.sendDefault
사용한 경우 현재 “카카오 서비스 오류 안내” 페이지가 안내되고 있는데요
오류 원인을 파악하기 어려운 페이지라 내부적으로 개선가능할지 확인해 보도록하겠습니다.
@peton
확인할 수 있는 URL에서 사용하신 코드와 앱 ID, 사용자를 추적하여 위와 같은 상황인지 알아보려 했었는데요. 카카오공유하기에 사용된 카카오 계정이 카카오톡을 사용중인 계정인지 먼저 확인해 보셔도 좋을 것 같습니다.
@sksmsvlxk @peton
사용자가 인지 가능한 오류 페이지로 변경되었습니다.