技術通常水平有限,有什麼錯的地方,望你們指正。小程序
小程序的熱度散的快差很少了,記錄一下本身的開發中的坎坷。服務器
登陸的照着官方的流程來便可:微信
首先建立一個請求方法來實現本身的服務器和微信服務器的一個通訊:session
public static String GET(String url){ String result = ""; BufferedReader in = null; try { URL realUrl = new URL(url); URLConnection conn = realUrl.openConnection(); conn.connect(); Map<String, List<String>> map = conn.getHeaderFields(); in = new BufferedReader(new InputStreamReader( conn.getInputStream())); String line; while ((line = in.readLine()) != null) { result += line; } } catch (Exception e) { }finally{ try { if(in!=null){ in.close(); } } catch (Exception e2) { //log中記錄 } } return result; }
而後構建請求的url(把紅圈變出的屬性改爲本身對應的數據):app
經過GET()方法和微信服務器來通訊,若是請求正確咱們就可以獲取到session_key和openid,把這兩個值存在session中:dom
Jedis jedis = new Jedis("localhost"); String openid = openid; String session_key = session_key; String uid = UUID.randomUUID().toString(); StringBuffer sb = new StringBuffer(); sb.append(openid); sb.append(","+session_key); jedis.set(uid, sb.toString());
把uid返給客戶端,之後客戶端的每一次請求都帶上uid。ui
在處理過程當中若是須要獲取登陸用戶的用戶名和頭像,若是用戶名有中文就會出現亂碼,解決方法以下:url
String nickNameDecode = new String(nickName.getBytes("ISO-8859-1"),"utf-8");