検索

ホームページ  >  に質問  >  本文

mysql - [php] php開発アプリのインターフェースの問題については、経験豊富な専門家に質問してください。

PHP 開発アプリのインターフェイス、ユーザー ログインの問題

ログイン成功後、以前のユーザーログインインターフェースがサーバーに保存されていない状態ですsession アプリ側に保存されている可能性があります。したがって、ユーザーが正常にログインした場合でも、特定のインターフェイスを調整するときは、サーバーの user_id から取得するのではなく、session をパラメーターとして渡す必要があります。

今日はログインと登録のインターフェースを変更したいと思います。私の同僚は、アプリのインターフェースには session の概念がないと言いましたが、サーバーにユーザーセッションを保存する他の方法があるべきだと常々感じています。

そこでマスターの皆さんにお聞きしたいのですが、

リーリー

みなさん、ありがとうございました!

某草草某草草2821日前707

全員に返信(10)返信します

  • 巴扎黑

    巴扎黑2017-05-16 13:01:53

    jwt を見てみましょう
    自己完結型: ペイロードには、ユーザーが必要とするすべての情報が含まれています

    返事
    0
  • 巴扎黑

    巴扎黑2017-05-16 13:01:53

    トークンと有効期限を設定し、トークンを使用して検証します

    返事
    0
  • 漂亮男人

    漂亮男人2017-05-16 13:01:53

    まず、ログイン インターフェイスを作成します。アプリはこのインターフェイスを呼び出し、渡されたユーザー名とパスワードを検証してトークンを返します。

    トークンを保存するテーブルを作成し、そのテーブルには user_id トークン、expire_data およびその他のフィールドが格納されることに注意してください。

    今後、彼が他のインターフェースをリクエストするたびに、このトークンを持ってくるだけで済み、あなたはトークンを検証できます。

    渡されたトークンは暗号化され、期限切れになり、一意であることが保証されます。これは基本的にそれだけです。

    返事
    0
  • 仅有的幸福

    仅有的幸福2017-05-16 13:01:53

    1. リクエストヘッダーにはユーザー usernamepassword ,到服务器端做验证,通过才继续下边业务逻辑。
    优点:防止了服务器端 api が含まれており、任意に呼び出されます。
    短所: ユーザー名とパスワードは毎回交換され、やり取りの量は多く、パスワードの平文送信は安全ではありません。

    2. 最初のリクエストには usernamepassword が必要です。検証後、cookie がクライアントに送信されます。 usernamepassword ,验证通过,发送 cookie 到客户端, app 保存 cookie 值。
    每次请求带上 cookie
    优点:和 pc cookie を保存します。コード>値。

    すべてのリクエストに cookie を含めます。

    利点: pc でのブラウザ認証の原理は同じです。
    app上記の2点において、登録ユーザーのみがビジネスロジックにアクセスできます。

    一部の

    には、登録データを必要としない API が多数あります token
    3. サーバーとクライアントの両方で共有されるいくつかの共通属性に基づいてランダムな文字列を生成する

    生成ルールを開発します。クライアントはこの文字列を生成し、サーバーはリクエストの受信時にこの文字列を検証します。
    短所: ランダム文字列生成ルールは機密にしておく必要があります。

    采纳答案

    私の回答で問題が解決したら、クリックしてください
    🎜🎜

    返事
    0
  • ringa_lee

    ringa_lee2017-05-16 13:01:53

    これは、さまざまなユーザーが認可インターフェースを通じてさまざまなトークンを取得し、トークンの有効期限を設定し、クライアントが各リクエストのヘッダーにトークンを入れて、定期的にトークンを更新することができます。

    返事
    0
  • 滿天的星座

    滿天的星座2017-05-16 13:01:53

    トークンを使用して、クライアント Cookie に保存されている従来の session_id を置き換えます。その後、トークンは Redis などのデータベースのキー名として使用され、キーの値はユーザー UID であり、session_id は組み込みのメソッドを通じてシミュレートできます。有効期限のメカニズム

    返事
    0
  • 大家讲道理

    大家讲道理2017-05-16 13:01:53

    当社にはトークンと有効期限があり、ログインするたびにトークンが更新されます

    返事
    0
  • PHPz

    PHPz2017-05-16 13:01:53

    迷ったときに当サイトで質問したことです

    1. あなたの同僚は、アプリにはセッションの概念がないと言っていますが、それは正確ではないと思います。私の以前の質問がお役に立てば幸いです。

    返事
    0
  • PHP中文网

    PHP中文网2017-05-16 13:01:53

    ログインとは、サーバーが成功したログイン ID を生成し、クライアントにログイン ID を返し、サーバーがログインによってユーザー情報を検証することです。

    返事
    0
  • 習慣沉默

    習慣沉默2017-05-16 13:01:53

    安全なのはaccess_tokenです。この点については、WeChat の API インターフェースをご覧ください。

    簡単な方法はuser_id;

    返事
    0
  • キャンセル返事