>  기사  >  위챗 애플릿  >  WeChat 개발을 위한 미니 프로그램에 로그인하는 방법

WeChat 개발을 위한 미니 프로그램에 로그인하는 방법

高洛峰
高洛峰원래의
2017-03-11 15:58:152315검색

이 글은 주로 WeChat의 개발, 즉 미니 프로그램에 로그인하는 단계를 소개합니다. 편집자는 꽤 좋다고 생각하므로 지금 공유하고 참고용으로 제공하겠습니다.

이 작은 프로그램의 주요 목적은 사용자가 WeChat 사용자 정보로 로그인하고 사용자 정보가 자신의 데이터베이스에 저장되도록 승인하는 것입니다. WeChat에 로그인하면 코드를 받게 됩니다. 획득한 openid를 사용하여 프로젝트 데이터베이스에서 사용자의 관련 정보를 찾을 수 있습니다.

테스트 과정에서는 사용자 로그인 시 획득한 코드가 필요하므로 위챗 개발 가젯을 사용하게 됩니다~!

WeChat 개발을 위한 미니 프로그램에 로그인하는 방법

이 도구의 사용은 프로젝트의 승인을 받아야 합니다.

WeChat 개발을 위한 미니 프로그램에 로그인하는 방법

생성된 코드는 시간 제한이 있습니다.

WeChat 로그인 포트의 API는 다음과 같습니다

인터페이스 주소: http://www.php.cn/

요청 매개변수:

매개변수 필수 지침
appid는 미니 프로그램의 고유 식별자입니다.
secret은 미니 프로그램의 앱 비밀번호입니다.
js_code는 로그인 시 얻은 코드입니다.
grant_type은 Authorization_code로 채워집니다.

반환 매개변수:

매개변수 설명
openid 사용자 고유 식별자
session_key 세션 키
expires_in 세션 유효 기간(초), 예를 들어 2592000은 세션 유효 기간은 30일입니다

반환 지침:


//正常返回的JSON数据包
{
   "openid": "OPENID",
   "session_key": "SESSIONKEY"
   "expires_in": 2592000
}


//错误时返回JSON数据包(示例为Code无效)
{
  "errcode": 40029,
  "errmsg": "invalid code"
}

다음과 같이 코드를 작성할 수 있습니다

회사에서 자체 형식으로 메시지를 보내드립니다. 다 작성되어 있으니 요청 경로와 요청 매개변수만 작성하면 됩니다.


//@Param code 用户登录微信生成的code
//@Return OAuthResult 返回包含openid和session_key和expires_in的类
public OAuthResult getOAuthResultByCode(String code) {
    String path = "/sns/jscode2session";
    Map<String, Object> parameters = new HashMap<>();
    parameters.put("appid", WechatConstant.WECHAT_APP_ID);
    parameters.put("secret", WechatConstant.WECHAT_APP_SECRET);
    parameters.put("js_code", code);
    parameters.put("grant_type", "authorization_code");

    OAuthResult oAuthResult = messageSender.getMessageForObject(path, parameters, OAuthResult.class, false);
    if (oAuthResult.getOpenid() == null){
      throw new BusinessException(BusinessException.Code.OAUTH_PROCESS_ERROR, "OAuth异常,原因:" + oAuthResult.getErrmsg());
    }
    return oAuthResult;
  }

위 내용은 이 글의 전체 내용이 모든 분들의 공부에 도움이 되기를 바랍니다. 또한 모두가 Script House를 지지해 주시길 바랍니다.

위 내용은 WeChat 개발을 위한 미니 프로그램에 로그인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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