ajax 위 챗 페이지 인증 로그 인 방법
프로젝트 는 전후 단 완전 분리 방안 을 사용 하기 때문에 일반적인 위 챗 권한 수여 로그 인 방법 을 사용 할 수 없습니다.ajax 를 사용 하여 위 챗 권한 수여 로그 인 을 실현 해 야 합 니 다.
수요 분석
본인 은 페 퍼 이기 때문에 위 챗 개발 은 EasyWeChat 을 사용 하기 때문에 실현 하 는 방식 은 EW 에 기반 한 것 입 니 다.
사실 이것 을 실현 하 는 것 도 번 거 롭 습 니 다.실현 하기 전에 우 리 는 위 챗 권한 수여 의 전체 절 차 를 알 아야 합 니 다.
기능 실현
사용자 가 위 챗 인증 확인 페이지 를 불 러 오도 록 유도 합 니 다.
이것 은 우리 가 두 가지 일 을 해 야 합 니 다.첫째,jsapi 도 메 인 이름 을 설정 하고,둘째,위 챗 페이지 에서 권한 을 수 여 받 은 리 셋 도 메 인 이름 을 설정 합 니 다.
위 챗 인증 을 구축 하 는 url
"https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + appId + "&redirect_uri=" + location.href.split('#')[0] + "&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect
연결 에서 두 개의 변수,appId,그리고 redirect 를 볼 수 있 습 니 다.uri。appId 는 더 이상 말 할 필요 가 없습니다.바로 우리 가 권한 을 수 여 받 을 위 챗 공중 번호 의 appId 입 니 다.다른 쪽 의 리 셋 URL 은 바로 현재 페이지 의 URL 입 니 다.
function getUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]);
return null;
}
function wxLogin(callback) {
var appId = 'xxxxxxxxxxxxxxxxxxx';
var oauth_url = 'xxxxxxxxxxxxxxxxxxx/oauth';
var url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + appId + "&redirect_uri=" + location.href.split('#')[0] + "&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect"
var code = getUrlParam("code");
if (!code) {
window.location = url;
} else {
$.ajax({
type: 'GET',
url: oauth_url,
dataType: 'json',
data: {
code: code
},
success: function (data) {
if (data.code === 200) {
callback(data.data)
}
},
error: function (error) {
throw new Error(error)
}
})
}
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Javascript Ajax에 대한 간단한 연습저는 약 4년 동안 프로그래밍 개인 튜터로 일한 경험이 있습니다. 약 5년 전에 " "이라는 제목의 페르시아어로 내 웹사이트에 블로그 게시물을 올렸고 사람들이 저에게 전화하기 시작했습니다. 나는 항상 사람들을 가르치...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.