网友真实露脸自拍10p,成人国产精品秘?久久久按摩,国产精品久久久久久无码不卡,成人免费区一区二区三区

小程序模板網

微信小程序開發問答《七十九》不能使用session如何解決 & 小程序處理JS很慢 .

發布時間:2018-04-25 10:55 所屬欄目:小程序開發教程

1、微信小程序請求不能使用session如何解決?

A:本人在前面的微信小程序開發《二》中提到要想在服務端保持狀態需要在客戶端第一次請求服務器的時候給客戶端返回一個sessionid,由客戶端在本地保存,下次請求的時候在header里面帶上這個sessionid,寫到cookie字段里。但是最近發現請求時哪怕每次在header里帶上sessionid還是不能拿到同一個session,百度后終于發現坑了(也不知道微信為啥要這么做),原來微信對wx.request這個API做了修改,小程序發起的請求并不是直接請求我們的后臺服務器,而是先通過微信的服務器再發送到我們的后臺服務器,既然請求都是要通過微信的服務器發送到我們的服務器,那么我們的服務器也就無從識別請求的發起者了。因此,session在微信小程序的后臺開發中是無法使用的。 
既然session無法使用,對于本人這種web的后端程序猿該如何是好,只能用別的方式來代替了哦。我用了redis來代替session的功能,當客戶端發送請求到后臺服務器時,生成一個隨機字符串作為key,原本要放入session的內容,一般是用戶信息作為value存入redis中,然后將key返回給客戶端,客戶端將key存在本地的storage,在下次請求的時候以參數據形式將key帶上,這樣當后端服務器接收到key時便可以從redis中查找該key對應的value,從而實現了替代session的效果,redis還可以設置key失效的時間。

2、微信小程序報錯: Cannot read property '0' of undefined

A:今天遇到了一個bug:

 

				
  1. VM4735:2 Uncaught TypeError: Cannot read property '0' of undefined

查了很久發現是三目運算寫錯了,這種低級錯誤容易犯,而且又很難發現。

最后是一段一段注釋掉,用排除法來縮小范圍來找到的。直接看代碼很難發現。

 

				
  1. <view>{{param:1:2}}</view>

to

 

				
  1. <view>{{param?1:2}}</view>

3、小程序里面不支持document或window語法,那請問這里要用什么方式來代替? 

A:由于框架并非運行在瀏覽器中,所以 JavaScript 在 web 中一些能力都無法使用,如 document,window 等。  https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-react.html

https://mp.weixin.qq.com/debug/wxadoc/dev/framework/view/wxml/data.html

 

4、為啥小程序處理JS很慢很慢 ?

我在網頁上跑 這一段代碼一兩秒就可以了,在小程序上跑了10秒左右,這段代碼有130行左右,一直循環匹配,太耗性能了吧,在網頁上還好。小程序里太慢了!

A:看樣子應該是你數據量太大了,調用setData之后覺得卡頓,建議不要用setData傳輸太大的數據



易優小程序(企業版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://www.xiuhaier.com/wxmini/doc/course/24056.html 復制鏈接 如需定制請聯系易優客服咨詢:800182392 點擊咨詢
QQ在線咨詢
AI智能客服 ×