## 第一大坑
小程序不支持session 和 cookie 记录用户登录信息,小程序是通过先微信服务器再到我们服务器
解决办法:uni.setStorageSync()存储 header['Set-Cookie'] ;
下次请求中 header.Cookie 为已存储的cookie
```javascript
post(url, params) {
let header = {}
// #ifndef H5
header.Cookie = uni.getStorageSync('sessionID');
// #endif
return new Promise((resolve, reject) => {
// instance.post(url, psarams).then(r => {
// console.log(url)
// resolve(r.data);
// })
uni.request({
url: helper.websiteUrl+url,
data: params,
method:'POST',
header:header,
success: (res) => {
console.log(res)
// #ifndef H5
if(res && res.header && res.header['Set-Cookie']){
uni.setStorageSync('sessionID',res.header['Set-Cookie'])
}
// #endif
resolve(res.data)
},
fail: () => {
}
})
})
}
```
## 不算坑
Vuex 除了commit、dispatch 触发 mutations和action外,还能
import {
mapState,
mapMutations,
mapActions
} from 'vuex'
...
methods:{
...mapMutations(['balabala(函数名)'])
...mapActions(['balabala'])
}
这样可以把vuex中的对应函数暴露出来直接像普通函数一样调用
这是我急功近利的原因
## 第三坑
插件市场有个老哥做了《socket.io-client(uniapp版) 》
让我们在uniapp上也能用socket.io