Resolva o problema de que apenas um nome de domínio de retorno de chamada pode ser definido para autorização da web WeChat OAuth2.0
Recentemente, foi descoberto que o nome de domínio de autorização da página web da conta pública WeChat agora pode suportar a configuração de vários domínios. Atualmente, a importância da existência deste projeto não é tão forte como antes. O único uso atualmente é que vários nomes de domínio possam ser processados em um só lugar.
Implante get-weixin-code.html
no diretório do seu nome de domínio de retorno de chamada autorizado do WeChat
O método de uso é semelhante ao método de retorno de chamada diretamente através do WeChat, exceto que o endereço de retorno de chamada é alterado para o endereço onde get-weixin-code.html
está localizado e response_type
é omitido (porque só pode ser code
) e #wechat_redirect
(é corrigido), eles serão adicionados sozinhos em get-weixin-code.html
Depois que a página get-weixin-code.html
obtiver o código do WeChat, ela voltará para o URL preenchido em redirect_uri
e colocará code
e state
após o URL.
Vá para a plataforma pública WeChat->Permissões de interface->Autorização da página da Web para obter informações básicas do usuário->Modificar, preencha o nome de domínio da página de retorno de chamada de autorização, por exemplo www.abc.com
Implante get-weixin-code.html
sob o nome de domínio www.abc.com
, não necessariamente no diretório raiz, por exemplo: http://www.abc.com/xxx/get-weixin-code.html
Supondo que sua página http://www.xyz.com/hello-world.html
precise obter autorização do WeChat, você deve usar o seguinte endereço para obter autorização: http://www.abc.com/xxx/get-weixin-code.html?appid=XXXX&scope=snsapi_base&state=hello-world&redirect_uri=http%3A%2F%2Fwww.xyz.com%2Fhello-world.html
Eventualmente, isso irá pular para o seguinte endereço: http://www.xyz.com/hello-world.html?code=XXXXXXXXXXXXXXXXX&state=hello-world
, e você obterá o code
de autorização e os parâmetros state
personalizados.
Obrigado aos seguintes amigos por suas contribuições para este projeto (listados sem ordem específica)
estrela769706697
Davidqr
tianhe1986
AnthonyHuang001
sanzhumu
q250305917
kisChang
EasonShen1989
Com mais um salto, o problema de o WeChat restringir a configuração de apenas um nome de domínio de retorno de chamada foi resolvido.
Um pouco da experiência do usuário é sacrificado em troca da beleza da implantação do projeto. Não há necessidade de implantar vários projetos sob um nome de domínio.
Se você tiver essas necessidades, você pode usar este projeto
Bem-vindo ao enviar solicitações pull
Recomenda-se primeiro entender o processo de retorno de chamada de autorização do WeChat antes de usar este projeto.
Muitos amigos me perguntam como oferecer suporte a plataformas WeChat de terceiros. Isso requer compreender os métodos de autorização de diferentes plataformas de terceiros e estar familiarizado com seus métodos de autorização, parâmetros de solicitação, etc. Se eles forem autorizados através do URL na entrada do site, então você pode usar este projeto para alterar o URL de entrada para o método acima. Se eles obtiverem autorização em determinadas páginas no processo, eles não poderão alterar o endereço. portanto este projeto não é aplicável.