1. Apikey, AppSecret 및 판매자 번호를 얻으십시오
공개 계정 및 판매자 계정을 등록하십시오
2. 사용자의 OpenID를 얻으십시오
1. 설정 [승인 콜백 페이지 도메인 이름]
공식 설명 : 사용자가 웹 승인 페이지에서 공식 계정을 승인하기로 동의하면 WeChat은 승인 데이터를 콜백 페이지로 전달하여 안전 및 안정성을 보장해야합니다. 콜백 페이지 도메인 이름은 IP 주소를 지원하지 않습니다.
2. 사용자는 승인에 동의합니다
이 URL을 WeChat 메뉴 아래에 작성 하고이 페이지를 입력 할 때 동의하도록 사용자에게 동의하도록 요청했습니다. 참고 : 조용히 승인 된 것 같습니다. 사용자는 알지 못합니다.
1.URL :
https://open.weixin.qq.com/connect/oauth/authorize?appid=appid&redirect_uri=url&response_type=code&scope=snsapi_userinfo&state= park#wechat_redirect
매개 변수 : APPID : 공식 계정의 고유 식별자
REDIRECT_URI : 리디렉션 된 URL은 인증 후 리디렉션 될 페이지입니다.
범위 : 응용 프로그램 인증 범위
snsapi_base : 권한 부여 페이지가 팝업되어 직접 점프하고 사용자 OpenID 만 얻을 수 있습니다.
snsapi_userinfo : 권한 부여 페이지가 팝업됩니다. OpenID를 통해 별명, 성별 및 위치를 얻을 수 있습니다.
상태 : 리디렉션이있는 매개 변수
2. 사용자가 동의 한 후에는 유효한 시간만으로 코드가 생성됩니다.
문자열 코드 = request.getParameter ( "코드")
3. OpenID로 코드를 변경하십시오
/** * 상수 클래스 * @author rory.wu */public class 상수 {// 타사 사용자의 고유 한 자격 증명 public static string appid = ""; "; = 인증 _code ";} / *** 일반 도구 클래스* @Author Rory.wu* @version. String requestUrl, String requestStrs) {jsonobject jsonobject = null; Log.Error (Connection timeout : "+ce.getMessage ())} {https 요청 예외 :"+e.getMessage ()); Uffer httpsRequest (String requestUrl, String requestMethod, String output) Nosuchalgorithmexception, KeymanagementException, mullformedurlex ception, ioexception, protocolexception, UnsupportedEncection {htupppspps ) url.openConnection (); 연결. output.getBytes ( "utf-"); bufferedReader = stringbuffer (stringbuffer); inputStreamReader.close.close (); */ private void setopenid (문자열 코드) {session.put ( "code", code); replace("CODE", String .valueOf(session.get("code"))); log.info("oauth_url:"+oauth_url); JSONObject jsonObject = CommonUtil.httpsRequestToJsonObject(oauth_ur l, "POST", null); log.info("jsonObject:" +jsonObject); Object errorCode = jsonObject.get("errcode"); if(errorCode != null) { log.info("code is illegal"); }else{ String openId = jsonObje ct.getString("openid"); log.info("openId:"+openId); session.put("openId", openId); } }oauth_url returns the format: { "access_token":"ACCESS_TOKEN", "expires_in ":,"refresh _token ":"refresh_token ","openid ":"openid ","scope ":"scope ","unionid ":"o_bmasdasdasdsad_sgvthmzopfl "} 코드는 무효입니다 : {"errcode ":,"errmsg ": "유효하지 않은 co de"}위의 내용은 Wulin.com의 편집자가 공유하는 WeChat 공개 계정 지불입니다. OpenID를 얻는 방법은 무엇입니까?