테스트 사이트 - 개발 중인 베타 버전입니다

ajax로 데이터 송수신 진행 시, 에러 채택완료

qoqofh 3년 전 조회 1,997

</p>

<p>$.ajax({

                    type: "POST",

                    url: "<a href="https://xxx.com"," target="_blank" rel="noopener noreferrer">https://xxx.com",</a> //데이터 전송받는 특정 주소

                    data: {

                        "name": f.name.value,

                        "hp": f.tel.value,

                    },</p>

<p>                    dataType: "json",

                    success: function(json) {

                        if (json) {

                            if (json.result == true) { // 응모 성공

                                alert("응모가 완료되었습니다.");

                                f.reset();

                            }

                        }

                        return;

                    }

                });</p>

<p>

 

이렇게 데이터를 ajax로 api post로 통신하여 데이터 송수신을 진행하려 합니다.

 

근데, 콘솔 확인해보니, 

이런식으로 뜨는 상황인데 해결점이 있을까요?

댓글을 작성하려면 로그인이 필요합니다.

답변 5개

채택된 답변
+20 포인트
그누위즈

외부도메인을 사용할경우 jsonp를 사용해야합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

q
qoqofh
3년 전
이 답변처럼 결과값이 뜨네요 ㅠ

댓글을 작성하려면 로그인이 필요합니다.

팁게시판에 있는거 참고해보세용

 

https://sir.kr/pg_tip/17089

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

3년 전

cors 를 해결할려면, 요청하는 서버에서 cors 를 allow 해주는 추가 작업을 해주거나,

PHP에서 curl로 요청후 자기 도메인에서 json을 뿌려주는 형태(proxy)로 수정하셔야 합니다.

jsonp 도  callback 처리를 위해서 서버에서 별도  별도 처리가 필요합니다. 

(해당 서버가 내 서버가 아닌 경우는 수정이 안됨)

 

따라서, 쉽게 구현하는 방법은 ajax요청을 로컬 서버로 하고, 로컬 서버에서 php curl로 원격 요청 결과를 다시 뿌려주는 형태입니다.

 

cors allow 처리 하는것도 웹서버의 영향을 받기 때문에, 예제보고 따라해도 동작 안되는 경우가 더 많습니다.

(머리털 빠짐.)

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

끄끄
3년 전

 

이런식으로 뜨네요 ㅠㅠ @그누워즈

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

3년 전

저 주소가 외부 도메인이면 안되실겁니다. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

q
qoqofh
3년 전
아... cors 부분일까요..? 이에대한 해결방법이 있을까요?

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인