WeChat 토큰 메커니즘은 개발 환경에서 종종 모방됩니다. 하지만 이것이 무슨 소용이 있을까요? 제 생각에는 다른 사람들이 무작위로 인터페이스를 요청하는 것을 방지하는 것뿐입니다. 예를 들어 성공적인 로그인이 b c 및 md5(a+b+c+token)를 반환하면 다음에 요청 인터페이스가 이 abc 매개변수를 가져올 때 토큰과 일치하게 됩니다. 내 서버의 암호화 확인 문자. 별로 쓸모가 없는 것 같은데 그 비결을 알려주세요
欧阳克2017-06-23 09:13:04
말씀하신 상황에서 생성된 토큰은 일반적으로 되돌릴 수 있고 자체 검증이 가능합니다. 즉, MD5 알고리즘은 일반적으로 사용되지 않지만 역으로 일반 데이터로 변환된 다음 일반 데이터의 다른 부분의 내용이 데이터는 일관성이 있습니다. 따라서 사용자가 토큰과 동일한 형식의 토큰 문자열을 무작위로 받으면 서버는 오류 정보를 제외한 어떠한 데이터도 반환하지 않고 직접 오류를 보고합니다. 이렇게 하면 크롤러가 웹사이트에서 데이터를 어느 정도 가져오는 것을 방지할 수 있고 서버에 대한 부담도 줄어듭니다(유효한 요청인지 여부에 관계없이 데이터를 쿼리하면 쿼리 압력이 매우 높기 때문입니다). 토큰 생성 방법은 공개되지 않으므로 크롤러 작성자가 토큰 생성 방법을 해독하기 어렵습니다.
말씀하신 것 외에도 사용자 로그인으로도 사용할 수 있습니다. 즉, 사용자가 로그인하면 토큰이 반환되어 프런트 엔드에 저장됩니다. 이 토큰이 만료되기 전에 프런트 엔드에서는 항상 이 토큰을 사용자의 로그인 토큰으로 사용할 수 있습니다. 서버 데이터가 요청될 때마다 데이터베이스의 토큰에 해당하는 사용자 정보가 이 토큰을 통해 검색됩니다. 즉, 이때의 토큰은 로그인한 사용자에게 부여된 권한과 동일합니다.