uniapp/WeChat 애플릿 로그인 및 사용자 정보 획득 기능 관련 문제 uni.login() uni.getUserinfo()

1. wx.login() / uni.login() 관련 미니 프로그램 로그인 인터페이스

애플릿에 로그인하는 과정이 어렵지는 않지만 간단하지만 사람들이 점차 이해하는 데 시간이 오래 걸립니다. 문서를 보고 여러 문서를 읽어보니 정답을 모르고 하나하나 실험해 보려고 하는데 항상 만드는 것이 불만스럽습니다. 일련의 모색 끝에 나는 이해하지 못해서가 아니라 Shang Du Niang이 본 많은 자료가 일관성이 없었기 때문에 wx 애플릿 자체의 규칙을 조정하여 발생할 수 있음을 점차 깨달았습니다. 인터페이스.
다음은 일반적인 요약, 구체적으로 수행하는 방법, 프로세스를 기록하기 위해 처음부터 시작하겠습니다 (물론 저도 초보자이므로 이해를 대략적으로 표현하겠습니다. 수정해 주셔서 감사합니다. 날 미워해, 피부가 얇아)

1. 애플릿 로그인 과정에서 귀찮은 인증 팝업창이 필요하지 않습니다.

작은 프로그램이든 로그인이 필요한 다른 응용 프로그램이든 관계없이 로그인 논리는 나쁘지 않으며 대략 아래 그림의 관계로 나타낼 수 있습니다.
간편한 로그인 프로세스
다음은 공식 미니 프로그램에서 제공하는 미니 프로그램 로그인 과정입니다. 위 논리와 다른 점은 애플릿에 추가 WeChat 서버가 있다는 것입니다(단, 이 끝과의 통신은 대부분 백엔드 담당자의 작업입니다. 프런트 엔드 개발 참여).
여기에 이미지 설명 삽입
애플릿에 로그인할 때 프런트 엔드 직원은 더 이상 휴대폰 번호와 암호를 제공할 필요가 없지만 코드 값을 엔드에 전달해야 한다는 것을 알 수 있습니다.
그리고 이 코드 값은 WeChat에서 제공하는 wx.login()이라는 api를 통해 얻어지며, 이는 사용자만이 얻을 수 있습니다(uniapp은 uni.login()).
여기서 인증창이 뜨지 않는 이유가 궁금하실텐데요. 사실 이 인터페이스는 인증 팝업창을 띄우지 않습니다. 대신 직접 사용해서 얻을 수 있습니다.과거에는 사용자 정보를 얻을 때만(getUserProfile을 사용할 때) 팝업 인증창이 떴습니다.uniapp을 사용할 때 코드는 다음과 같습니다.(애플릿도 비슷합니다
. 다음 코드는 설명하지 않음):

	uni.login({
    
    
	  provider: 'weixin', //使用微信登录 必要的参数详情看官方文档
	  success: function (loginRes) {
    
    
	    console.log(loginRes); //返回的参数包含在loginRes中
	  }
	});

그래서 앞으로 우리는 인증 및 기타 문제에 대해 걱정할 필요가 없습니다.이 코드를 작성하고 코드 을 가져와 백엔드 프로그래머에게 전달하면 됩니다. 백엔드는 작은 프로그램을 추가할 수 있습니다. 제공한 코드를 기반으로 WeChat 서비스 인터페이스의 appid 및 appsecret에서 session_key 및 openid를 가져옵니다(appid 및 appsecret의 두 값은 WeChat 공개 플랫폼으로 이동하여 애플릿의 백그라운드에 로그인해야 함 그런 다음개발 관리 > 개발 설정이것에 대해 알아야 합니다) 그러면 백엔드가 높은 확률로 데이터를 처리한 다음 암호화된 토큰을 사용자에게 전달합니다. 이를 통해 백엔드에서 반환된 토큰을 캐시하고 로그인이 필요한 기능에 대한 모든 요청에 ​​첨부하기만 하면 로그인 기능이 대략적으로 완료되고 기타 세부 사항은 비즈니스를 기반으로 하거나 백엔드 프로그래머와 협력하여 개선할 수 있습니다.

로그인 팝업은 언제 뜨나요?

wx.getUserinfo (사용하지 마세요, 쓸모가 없습니다)

	已废弃,微信收回了,不建议用,就算版本老编译成功了,后续发布可能会有无法通过审核之类的问题。

wx.getUserProfile (상사가 황소보다 더 완고하지 않는 한 사용하지 마십시오)

이 인터페이스는 사용자 정보를 얻을 수 있습니다. 각 요청에 대해 권한 부여 창이 팝업되며 사용자가 동의한 후 userInfo가 반환됩니다. 그러나 WeChat 미니 프로그램 기본 라이브러리 버전 2.27.1 이상으로만 제한됩니다.
여기에서 변경:
여기에 이미지 설명 삽입
왜?
wx.getUserProfile 인터페이스가 철회되었으므로 자세한 내용은 "미니 프로그램 사용자 아바타 닉네임 획득 규칙 조정 공지"를 참조하십시오.
무슨 뜻이에요? WeChat에서 사용을 중지하고 그가 제공하는 다른 방법을 사용하도록 권장하는 것입니다.어떤 방법? WeChat의 아바타와 닉네임을 사용하지 말고 사용자가 직접 닉네임과 아바타를 입력하도록 할 수 있으며 사용하기 쉬운 방법을 준비했습니다.
근데 사장님이 소보다 더 고집이 센데 사장님이 내 말을 안 들으면 나도 안 들을 텐데 어떡하지? 위 그림과 같이 기본 라이브러리의 2.10.4 - 2.27.0
버전 으로만 조정이 가능합니다 . 그렇지 않으면 팝업창이 뜨지 않아 불편하실 수 있습니다. 대략 위와 같습니다. 제 기술적인 능력은 한계가 있습니다. 꾸짖지 마세요. 저는 피부가 얇습니다. 실수가 있으면 안내해 주세요. 저는 단지 초보자임을 다시 한 번 말씀드립니다. 의심의 여지없이 바랍니다. 나처럼 재능이 많지 않은 Xiaobai와 소통하기 위해.

Supongo que te gusta

Origin blog.csdn.net/SANGZHU_001/article/details/128125384
Recomendado
Clasificación