share api 문의

share api 문의

QA

share api 문의

본문

share api를 통해 이미지를 공유하고 싶습니다.

 

2.0부터 파일쉐어가 가능한것으로 알고있으며, 해당경우 업로드되는 파일 쉐어로 이미지를 파일 형태로 변경해서 공유하는 기능을 구현중입니다. 

 

Blob 형태로 구현중인데 잘 동작하지 않네요. 아래 코드에서 file, blob 출력시 true로 출력하며, 실제 이미지주소로 이미지는 이상없는것으로 확인했습니다.

 

문제는 Blob으로 변경된 이미지가 공유시 제대로 노출되지 않습니다. 파일은 있으나 이미지가 깨진(?) 제대로 노출되지 않는 형태로 보아 변환에 문제가 있는것 같은데 도움을 요청드립니다.

 

 


<script>
            img_url = $(".img").attr("src");
            let img_file = img_to_blob(img_url );
            var blob = new Blob(["This is the sample data"],
                {type : "image/jpeg"});
            const file = new File([blob], imgUrl, {
            type: blob.type,
            });
 
            console.log(file instanceof File); //true
            console.log(file instanceof Blob); //true
            console.log(file); 
 
            let filesArray = [];
            filesArray.push(file);
 
            if (navigator.canShare && navigator.canShare({ files: filesArray })) {
                var webUrl = location.protocol+"<?php echo '//'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; ?>";
 
                navigator.share({
                    files: filesArray,
                    title: "<?php echo str_replace(array('%27', '"' , '\"'), '', strip_tags($view['subject'])); ?>",
                    text: "<?php echo preg_replace('/\r\n|\r|\n/','', strip_tags(get_text(cut_str(strip_tags($view['content']), 200), 1))); ?>",
                    url: webUrl,
                })
                .then(() => console.log('Share Success'))
                .catch((error) => console.log('Share Fail', error));
            }else{
                alert('Share API is not working');
            }
</script>

 

이 질문에 댓글 쓰기 :

답변 1

이것은 찾아봐도 좀 어렵네요.  그래서 답변이 없겠지만..

디버깅을 해 보면 어떨까요?

1. 샘플 이미지를 준비합니다.

2.  blob로 변경된 파일을 직접 테스트 html로 로컬에서 보이는지 테스트해 본다.

 

이미지가 제대로 보인다면 blob와 file 함수가 제대로 동작된 것이겠죠..

아니면 그외의 다른쪽을 체크해 봐야 될 것 같습니다

답변을 작성하시기 전에 로그인 해주세요.
전체 0 | RSS
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT