微信小程序請求API接口PHPSESSID變化的解決方式


微信小程序開發,請求服務器API的方法使用的是微信官方提供的wx.request()方法。在開發中發現,每一個請求都會生成一個獨立的PHPSESSID,如下圖示:

搜索后得知,這是由於wx.request()造成的。如果直接使用瀏覽器請求並不會出現這種情況。

解決方式如下:

  通過登錄接口獲取到用戶的session_key 和 open_id,設置session信息如下:

  $3rd_session = md5(session_key . $open_id)
  $_SESSION[$3rd_session ] = session_key . '|' . $open_id;

  服務器生成此用戶的session_id,接口返回 3rd_session 和 session_id。

  在其他接口請求中,在header中設置cookie的值:session_id:

  header = header || {
      'content-type': 'application/x-www-form-urlencoded;',
      'Cookie': 'PHPSESSID=session_id值'
  }           

  並在接口中帶上參數session=3rd_session,此時服務端獲取到的就是同一個session_id,根據3rd_session從$_SESSION得到用戶的openid

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM