Um sich mit einem WECHAT-Konto anzumelden, habe ich versucht, das Plugin oatuh2-basic zu verwenden, bin aber auf ein Problem gestoßen.
Normalerweise sollte der WECHAT-Server application/json zurückgeben, damit das Plugin die USID im JSON-String lesen kann.
Unglücklicherweise gibt der Server nur text/plain zurück, was vom Plugin nicht gelesen werden kann.
Hier ist das Ergebnis. Einer hat sich erfolgreich mit WEIBO angemeldet, und der andere hat versucht, sich mit WECHAT anzumelden, ist aber fehlgeschlagen.
Weisen Sie Ihre chinesischen Mitbürger einen Weg, in container/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/oauth2-1.4.7/lib/oauth2/response.rb
befindet sich der folgende Code
# Content type assignments for various potential HTTP content types.
@@content_types = {
'application/json' => :json,
………………
'text/plain' => :text,
}
Ändern Sie ihn wie folgt:
'text/plain' => :json,
Natürlich ist dies nur für WeChat nützlich, da nur WeChat text zurückgibt.