LoginV2Controller.java 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. package com.ljsd.controller;
  2. import com.google.gson.Gson;
  3. import com.ljsd.channel.Mock361YXSDK;
  4. import com.ljsd.channel.Mock737YXSDK;
  5. import com.ljsd.channel.MockQuickSDK;
  6. import com.ljsd.channel.MockXingTuSDK;
  7. import com.ljsd.pojo.ResMsg;
  8. import com.ljsd.redis.RedisKey;
  9. import com.ljsd.util.BaseGlobal;
  10. import com.ljsd.util.StringUtils;
  11. import com.ljsd.channel.MsySDK;
  12. import org.slf4j.Logger;
  13. import org.slf4j.LoggerFactory;
  14. import javax.servlet.ServletException;
  15. import javax.servlet.http.HttpServlet;
  16. import javax.servlet.http.HttpServletRequest;
  17. import javax.servlet.http.HttpServletResponse;
  18. import java.io.IOException;
  19. import java.io.PrintWriter;
  20. import java.util.HashMap;
  21. import java.util.Map;
  22. import java.util.Random;
  23. public class LoginV2Controller extends HttpServlet {
  24. private static final Logger LOGGER = LoggerFactory.getLogger(LoginV2Controller.class);
  25. private static Gson gson = new Gson();
  26. public LoginV2Controller() {
  27. super();
  28. }
  29. public void destroy() {
  30. super.destroy();
  31. }
  32. public void doGet(HttpServletRequest request, HttpServletResponse response)
  33. throws ServletException, IOException {
  34. this.doPost(request, response);
  35. }
  36. @Override
  37. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  38. request.setCharacterEncoding("UTF-8");
  39. response.setCharacterEncoding("UTF-8");
  40. response.setContentType("application/json; charset=utf-8");
  41. String uid = request.getParameter("userId");
  42. String token = request.getParameter("token");
  43. String channel = request.getParameter("channel");
  44. String subChannel = request.getParameter("sub_channel");
  45. LOGGER.info("LoginV2Controller uid={}, token={}, channel={}, subChannel={}",uid,token,channel, subChannel);
  46. ResMsg resMsg = new ResMsg();
  47. resMsg.setCode(1);
  48. try (PrintWriter out = response.getWriter()){
  49. if(StringUtils.checkIsEmpty(uid) || StringUtils.checkIsEmpty(channel)){
  50. resMsg.setMsg("参数不能为空");
  51. out.print(gson.toJson(resMsg));
  52. return;
  53. }
  54. boolean ok = false;
  55. if (channel.equals("quick")) {
  56. ok = MockQuickSDK.verifyUser(uid, token, subChannel);
  57. } else if (channel.equals("361yx")) {
  58. ok = Mock361YXSDK.verifyUser(uid);
  59. } else if (channel.equals("xingtu")) {
  60. ok = MockXingTuSDK.verifyUser(token);
  61. } else if (channel.equals("737yx")) {
  62. ok = Mock737YXSDK.verifyUser(uid);
  63. } else if (channel.equals("wanba")){
  64. ok = MsySDK.verifyUser(uid,token);
  65. } else {
  66. resMsg.setMsg("不支持该渠道");
  67. out.print(gson.toJson(resMsg));
  68. return;
  69. }
  70. if (!ok) {
  71. resMsg.setMsg("登录验证失败");
  72. out.print(gson.toJson(resMsg));
  73. return;
  74. // throw new RuntimeException("登录验证失败");
  75. }
  76. Map<String,String> parms = new HashMap<>();
  77. parms.put("openId",uid);
  78. int tokenKey = new Random().nextInt(1024) +10000;
  79. parms.put("token",Integer.toString(tokenKey));
  80. BaseGlobal.getInstance().redisApp.set(RedisKey.LOGIN_TOKEN,uid,tokenKey,-1, false);
  81. int code = 0;
  82. resMsg.setCode(code);//正常
  83. resMsg.setParms(parms);
  84. out.print(gson.toJson(resMsg));
  85. }catch (Exception e){
  86. e.printStackTrace();
  87. }
  88. }
  89. }