채택완료
ajax 데이터를 다른 도메인을 보내는 문제..
Copy
function out_membr(mb_id){
if( confirm("강제종료 하시겠습니까? ") ) {
$.ajax({
type: "POST",
datatype : "json",
async:false,
url: 'https://www.사이트.com/bbs/member_logout.php?mb_id='+mb_id,
data:{id:mb_id},
success: function(data){
if(data==1){
location.reload()
}
}
});
}
}
사용자 사이트와 관리자 사이트의 도메인이 다른데
관리자사이트에서 회원아이디를 사용자 사이트로 보내서
member_logout.php를 실행하려고 하려는데 안되는데
이런 방법은 불가능한건가요? .. ㅠㅠ
답변 4개 / 댓글 3개
채택된 답변
+20 포인트
다음 코드가 도움이 될지 모르겠습니다.
Copy
function out_membr(mb_id){
if( confirm("강제종료 하시겠습니까? ") ) {
/*
$.ajax({
type: "POST",
datatype : "json",
async:false,
url: 'https://www.사이트.com/bbs/member_logout.php?mb_id='+mb_id,
data:{id:mb_id},
success: function(data){
if(data==1){
location.reload()
}
}
});
*/
var url = 'https://www.사이트.com/bbs/member_logout.php?mb_id='+mb_id;
var tempnode = document.createElement('iframe');
tempnode.src = url;
tempnode.style.display = 'none';
tempnode.onload = function () {
this.remove();
}
document.body.appendChild(tempnode);
}
}
member_logout.php 파일이 원래 있었나요??
못봤던거 같은데...
Copy
//보내는쪽
<script>
function out_membr(mb_id){
if( confirm("강제종료 하시겠습니까? ") ) {
$.ajax({
type: "post",
datatype : "jsonp",
url: 'https://받는쪽도메인.com/bbs/member_logout.php',
data:{mb_id:mb_id},
jsonp : "callback",
success: function(data){
//
}
});
}
}
</script>
Copy
//받는쪽 헤더에 추가
header("Access-Control-Allow-Origin: https://보내는쪽도메인.com");
세션이나 쿠키로 하는거라서 다른 사람의 아이디를 로그아웃 시킬수는 없습니다. 그렇게 하실려면 해당 페이지에서 디비 저장하는걸 만들어서 특정 시간 동안 로그인을 못하게 하면서 해당 아이디 접속이 확인되면 로그아웃 시키는걸 따로 만드셔야겠죠
답변을 작성하려면 로그인이 필요합니다.