카카오톡 공유: JavaScript, 이미지 업로드 오류 발생

문의 시, 사용하시는 SDK 버전 정보와 디벨로퍼스 앱ID를 알려주세요.

t1.kakaocdn.net/kakao_js_sdk/2.7.1/kakao.min.js << 사용중
앱 아이디 : ID 573048


https://developers.kakao.com/docs/latest/ko/message/js-link#upload-image-upload

Kakao.Share.uploadImage({
file: files,
}).then(function (response) {
console.log(response.infos.original.url);
}).catch(function (error) {
console.log(error);
});

File을 업로드하는데 오류가 발생합니다.

files 객체는 어떻게 세팅하셨나요?

재현가능한 사이트 URL을 기재하시거나 html 코드 모두 기재 부탁드려요.

html2canvas 로 생성된 dataurl 을 File 로 변환하여
files에 실어서 보냅니다.

===

Kakao.Share.uploadImage({
file: files,
}).then(function (response) {
console.log(response.infos.original.url);
}).catch(function (error) {
console.log(error);
});

===
dataURL 을 file로 변환 하는 함수

var dataURItoFile = function(dataurl, filename){
	var arr = dataurl.split(","),
		mime = arr[0].match(/:(.*?);/)[1],
		bstr = atob(arr[arr.length - 1]),
		n = bstr.length,
		u8arr = new Uint8Array(n);
	while (n--) {
		u8arr[n] = bstr.charCodeAt(n);
	}
	return new File([u8arr], filename, { type: mime });
}

Share - Kakao JavaScript SDK

HTMLInputElement의 files property로 전달하셔야합니다.