搜尋

首頁  >  問答  >  主體

mysql - 【php】關於php開發app介面的問題,求有經驗的大神解答

php開發app接口,使用者登入問題

情況是這樣的,之前的用戶登入接口,登入成功以後伺服器不存session,可能在app那端存著吧。所以即便使用者登入成功,在調某些介面的時候,需要user_id還是要當作參數傳遞過去,而不是從伺服器的 session裡取得。

今天想修改登入註冊的接口,我同事說app接口沒有session的概念,但是我總覺得應該有其他方式將用戶會話存在伺服器。

所以我想請教各位大神:

1. php开发app接口有没有`session`的概念?
2. 如果没有,用户会话是怎么处理的?就是当前是否在登录状态

謝謝大家!

某草草某草草2751 天前679

全部回覆(10)我來回復

  • 巴扎黑

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

    可以看看jwt
    自包含(Self-contained):負載中包含了所有使用者所需的資訊

    回覆
    0
  • 巴扎黑

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

    我是設定了token以及過期時間,用token來驗證

    回覆
    0
  • 漂亮男人

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

    首先你弄個登陸接口,app調用這個接口,你驗證他傳遞過來的username password 之後,給他返回一個 token 。

    token 你建個表保存,表裡存 user_id token expire_data 等字段,注意token 和 user_id 是唯一的。

    以後他每次請求其他的接口,只要要把這個token帶給你,你驗證token就可以。

    傳遞的token 設定加密/設定過期/保證唯一 基本上就可以了。

    回覆
    0
  • 仅有的幸福

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

    1.請求頭裡帶用戶 usernamepassword ,到服务器端做验证,通过才继续下边业务逻辑。
    优点:防止了服务器端 api 被隨意呼叫。
    缺點:每次都互動使用者名稱和密碼,互動量大,且密碼明文傳輸不安全。

    2.第一次請求,要求usernamepassword ,驗證通過,發送cookie 到客戶端, usernamepassword ,验证通过,发送 cookie 到客户端, app 保存 cookie 值。
    每次请求带上 cookie
    优点:和 pc 保存cookie< /code> 值。

    每次請求帶上 cookie

    優點:和 pc 上瀏覽器認證的原理一樣了。
    app以上兩點,只有註冊用戶,才能有權存取業務邏輯。

    而有些

    有大量的不需要註冊資料apitoken
    3.制定一個

    生成規則,按某些伺服器端和客戶端都擁有的共同屬性產生一個隨機串,客戶端產生這個串,伺服器收到請求也校驗這個串。
    缺點:隨機串產生規則要保密。

    采纳答案

    如果我的答案解決了你的問題,請點擊
    🎜🎜

    回覆
    0
  • ringa_lee

    ringa_lee2017-05-16 13:01:53

    可以這樣弄,不同使用者透過授權介面取得不同的token,對token 設定好過期時間,讓client每次要求把token放在header內,並定時更新token

    回覆
    0
  • 滿天的星座

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

    用token來取代傳統的儲存在客戶端cookie中的session_id,然後token在redis等資料庫中作為鍵名,鍵值則為使用者uid,並且可以透過自帶的過期機制來模擬session_id

    回覆
    0
  • 大家讲道理

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

    我們公司是,token跟上時間,每次登陸,都會重新刷新token

    回覆
    0
  • PHPz

    PHPz2017-05-16 13:01:53

    這是我心懷疑惑的時候,在我們站內提問的

    1. 你同事說 app沒有session概念,我覺得不準確!希望我之前的提問對你有幫助!

    回覆
    0
  • PHP中文网

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

    登入是服務端產生登入成功的標識傳回給客戶端,客戶端請求是帶上登入標識,服務端透過登入表示驗證使用者資訊

    回覆
    0
  • 習慣沉默

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

    安全的做法是access_token。這點可以看看微信的api介面;

    簡單做法,就是user_id;

    回覆
    0
  • 取消回覆