방금 위챗 웹페이지를 인증하는 중에 오류가 발생했습니다! ! ! WeChat 웹페이지 인증 리디렉션_uri 매개변수가 잘못되었습니다!
문제가 발생하면 가장 먼저 해야 할 일은 공식 WeChat 공개 플랫폼의 기술 문서를 확인하는 것입니다.
사용자가 WeChat 클라이언트에서 제3자 웹페이지에 액세스하는 경우 공식 계정은 WeChat 웹페이지 인증 메커니즘을 통해 사용자의 기본 정보를 얻은 후 비즈니스 로직을 구현할 수 있습니다.
웹페이지 인증 콜백 도메인 이름 안내
1. WeChat 공식 계정이 사용자 웹페이지 인증을 요청하기 전에 개발자는 공개 플랫폼의 공식 웹사이트로 이동하여 "개발 - 인터페이스 권한 - 웹 서비스 - 웹 계정 - 웹 인증 획득"의 구성 옵션을 수정해야 합니다. 사용자 기본 정보' 승인된 콜백 도메인 이름입니다. 여기에 채워지는 것은 URL이 아닌 도메인 이름(문자열), 이므로 http://
2. 인증 콜백 도메인 이름 구성 사양은 전체 도메인 이름입니다. 예를 들어 웹페이지 인증이 필요한 도메인 이름은 www.qq.com입니다. 구성 후 이 도메인 이름 아래의 페이지는 http:/입니다. /www.qq.com/music.html, http OAuth2.0 인증은 //www.qq.com/login.html에서 가능합니다. 단, http://pay.qq.com, http://music.qq.com, http://qq.com에서는 OAuth2.0 인증을 수행할 수 없습니다3. 공식 계정 로그인 권한을 제3자 개발자에게 부여한 경우, 제3자가 공식 계정을 대체하여 웹페이지 인증을 구현할 수 있습니다.
WeChat에서 승인한 웹 서비스를 확인하세요.
웹 계정 사용자 기본 정보 획득을 위한 웹 페이지 권한 상한 수정 없음
수정을 클릭하고 http://www.xxxx.cn을 www.xxxx.cn으로 변경하면 리디렉션_uri 매개변수 오류가 발생하지 않습니다!
참고: http://www.xxxx.cn은 웹페이지 승인을 통해 안전하게 모니터링할 수 있습니다. 나중에 프로그램을 실행하고 호출했을 때 문제가 있는지 몰랐습니다. 문서를 확인한 결과 여기에 오류가 있는 것으로 나타났습니다.
//사용자의 openid 가져오기
function getBaseInfo(){
//1. 코드 가져오기
$appid="qq1813284q1q6q8888";//여기의 appid는 데모용으로 가짜입니다
$redirect_uri=urlencode("http://www.xxxx.cn/xxx.php/Index/getUserOpenId");//여기 주소에는 http://
가 필요합니다. $url="https://open.weixin .qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_uri."&response_type=code&scope=snsapi_base&state=123#wechat_redirect";
헤더('위치:'.$url );
}
$code=$_GET['code'];
$url="https://api.weixin.qq.com/sns/oauth2 /access_token?appid=".$appid."&secret=".$appsecret."&code=".$code."&grant_type=authorization_code ";
//3. 사용자의 openid 가져오기
$res = $ this- >http_curl($url,'get');
var_dump($res);//사용자의 openid를 보려면 인쇄하세요
}
내가 잘못한 걸까? 블로그 파크를 2일 동안 이용했습니다.