ホームページ  >  記事  >  バックエンド開発  >  Discuz と UCenter の修正ノート - 2014.12.19

Discuz と UCenter の修正ノート - 2014.12.19

WBOY
WBOYオリジナル
2016-08-08 09:32:23973ブラウズ

最近、プロジェクトのアーキテクチャの必要性により、JAVA と UCENTER を統合しています。そのため、ドッキングのプロセス中に多くの不愉快な出来事に遭遇しました。多くの研究を行った結果、2 つの大きな問題が最終的に解決され、将来の参照のために記録されています。

1. メールアドレスを入力する必要がある問題を解決します

このプロジェクトでは、ユーザーが登録時にメールアドレスを入力する必要はありませんが、UCENTER API では、検証に合格するためにメールアドレスを入力する必要があります。最後の手段として、UCENTER コードを変更してそれを回避する必要があります。変更されたコードは次のとおりです:

/uc_server/control/user.php 69行目:

リーリー

2. ユーザーが一度フォーラムに手動でログインする必要がある問題を解決します

掲示板はDISCUZに伴う登録、ログイン、パスワード検索などの操作をブロックするため、シングルサインオンを実装する必要があります。非常に厄介な問題に遭遇しました。メイン サイトに登録されたアカウントが UCENTER に同期された後、UCENTER は他のアプリケーションに通知しません。つまり、デフォルトでは、他のアプリケーション (DISCUZ を含む) は新しいユーザー リストをすぐに登録できません。よく調べた結果、DISCUZ はローカル登録、ログイン、その他のイベント中にのみ UCENTER と同期することがわかりました。その結果、メイン サイトに新しく登録されたユーザーは、BBS にまったく存在しないため、シングル サインインを通じて正常に BBS にログインできません。解決策は 2 つあり、1 つはユーザーが一度 BBS に手動でログインし、BBS 独自のメカニズムにより UCENTER からのユーザー情報を自動的に同期する方法です。もう 1 つは、シングル署名時にユーザー データを自動的に同期するように DISCUZ システム コードを変更することです。リクエストに応じて作成されます。すべての要素を比較検討した結果、2 番目のオプションを採用することが決定されました。変更されたコードは次のとおりです:

/api/uc.php 192行目:

リーリー

上記は、Discuz & UCenter の修正ノート - 2014.12.19 を、関連する内容を含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。