>백엔드 개발 >PHP 튜토리얼 >PHP의 도메인 간 문제에 대한 간략한 토론

PHP의 도메인 간 문제에 대한 간략한 토론

不言
不言원래의
2018-04-13 09:49:233954검색

이 글의 내용은 PHP의 크로스 도메인 문제에 관한 것입니다. 이제 여러분과 공유합니다. 도움이 필요한 친구들이 참고할 수 있습니다

먼저 가장 간단한 예제부터 이야기해 보겠습니다.

먼저 서버 코드로 가세요

public function kuayu(){
    header("Access-Control-Allow-Origin: http://baidu.com"); //说明是允许百度访问你的服务器
    return json(['status'=>0,'msg'=>1231]);
}
Access-Control-Allow-Origin:加上你请求该服务器的域名


如果要允许所有的服务器访问的话就只需要一个*,例如Access-Control-Allow-Origin:*

마지막으로 클라이언트 코드

$.ajax({
    url:'http://xxx.com/kuayu',这里填写你所访问的链接
    async:false,
       success:function(res){
       console.log(res);
    }
})
最后就完成了简单的跨域请求

jsonp 크로스 도메인에 대해 간단히 이야기해보겠습니다. (블로거의 이론적 지식이 탄탄하지 않아서 코드만 올릴 수 있겠네요 ㅎㅎ)

먼저 서버 코드

public function kuayu(){
    return input('get.callback')."(".json_encode(['status'=>0,'msg'=>1231]).")";
}

클라이언트 코드

$.ajax({
    url:'http://www.xx.cn/kuayu',
    dataType:'jsonp',固定写法
    jsonp:'callback',固定写法
    success:function(res){
        console.log(res);
    }
})

여기에는 함정이 있습니다. 즉, 서버에서 반환하는 데이터의 형식은 다음과 같아야 합니다

jQuery111307920822086038766_1523501176244({"status":0,"msg":1231})

앞의 큰 문자열은 시스템에서 생성되거나 사용자 정의될 수 있습니다

그래서 서버에서 반환된 데이터는 $_GET[' 콜백']이어야 합니다.(데이터) 형식은 다음과 같습니다

관련 권장 사항:

PHP 크로스 도메인 Ajax 솔루션

php 크로스 도메인 쿠키 공유 사용 방법_PHP 튜토리얼


위 내용은 PHP의 도메인 간 문제에 대한 간략한 토론의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.