1、基本信息

  (1)请求方法: http post

  (2)请求地址: http://{hostname}/suptruck/login


2、请求参数

名称 数据类型 说明 是否必填
username String 用户名
password String 密码
rsaEncryptKey String 加密后的公钥


3、请求示例

  1. {
  2. "username": "admin",
  3. "password": "+eGSOQrVVLfyGZAeWTilKw==",
  4. "rsaEncryptKey": "Eye88VJ8tNBQTDg61ujwVX9kZQsmH4y79c0kASL9tcMgccTD1SHJUabdP23vQBrYVzmA5UnkbktD1iX2yfE8zjF64A2QdM15bOZTphkqP8tWwq4BAKnDkMKQ/v3PC9KA0FcHi0lEKpNxlvCoIWRLwv1VzmKrMNiQpm2Si+nVK5g="
  5. }


4、响应参数

名称 数据类型 说明
code Integer code
msg String 提示信息
timestamp String 时间戳
data Object Json对象
- access_token String token
- expires_in Integer 有效时间


5、响应示例

  1. {
  2. "code": 100,
  3. "msg": "操作成功",
  4. "data": {
  5. "access_token": "eeyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjozLCJ1c2VyX2tleSI6Ijc5YjA3MzYyLWRhZmYtNDdlOC1iMDdkLTQ2MTNiZjE1MDg3OCIsInVzZXJuYW1lIjoiamluZ3FpIn0.aWUAlNFiOtqjpq_hmoVeJkZ6FScUSaxdlOQQbg1Rd6Jjb1FDQ7pmST0A0VnbOlxyh4z-UzssU97wTaNuTgJ8sw",
  6. "expires_in": 1440
  7. },
  8. "timestamp": "2023-04-13 11:28:11"
  9. }


6、公钥

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCSQYNxXjfZj1Y/dZBm/dDqPPc72bPeLc0uw9bYiFLLrueCdn3LhD7aRP0hDfxKqUkN9wWW6V9jshnaQWJBYwhmVyL72DzpRUOjQTzE1/uPXFVYK50T0JvkzB/R4GvrrafxG893ldljewULJgTf2r/pfjm3KZkG4Na+DRcynIf3gwIDAQAB

7、示例

  1. public static Map<String, String> genPassword(String password) {
  2. // 明文密码
  3. // String s = "123456";
  4. // aes 的key
  5. String uuid = RandomUtil.randomString(32);
  6. String privateKey = "MIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBALcgNBa1thzZP2tr" +
  7. "840SGPRjwV89KVJvZeX/9rGUnH1AtA7c4ucmvucTJmZoQrkk5tYWIv4HAAyGrJP9" +
  8. "qp1dLVog84exm+a5RFOQmG55GEPBmU/0A7Ihv45nph2dYZFdEe5jkcsU1bcU8B1I" +
  9. "uK/VYkO8OEsEGWOE74NmclRZ4VPxAgMBAAECgYBQ9/MwC14fOUtaQtvoBxVzkVvh" +
  10. "sVhA87JZVKiN8giTNPWoELBexfnoj8YNx5Gg7RkHlbgZG51A7JcHxEQY2ib/jznC" +
  11. "EvKehOCbbBvlwj67kAS/hievt+eZC/d3AWGz+0uhRBuvQiXN/rK08cQMyj6OCxiQ" +
  12. "1w5tPDJr3w/J/ACMAQJBAPELHwUtgClBfutLknoFyABDP1pNsFEPL51hWb1VdiwZ" +
  13. "YVloiqXCR8a41UsjyQwNiPJsDwG4l49j4WQAAsc1bbECQQDCfRVmuqFVrxf+i2II" +
  14. "l2/ZL9UwS3RFXVfb2pCS9Y6fxNrSXwHHytb1FhxIGfscvD31ZCDNVTZE5pof9QRn" +
  15. "lJpBAkBuSptoABjLR8euHAcqxChuTlbXmAKcJGmyBlBMfKU0qmxLv7TpAYtcF0ip" +
  16. "N/ePB0ZpPh5juDXJC3efDQ44Xm8RAkApvVCHgIw5aF986Ir8jwuZD/Pv7nGgpVzC" +
  17. "uVCHyZ13Wncf6PXn2/dwF/Ov4auLyjZ94KRNjPkdpmPzcdElLbZBAkAhpX0ip7qT" +
  18. "gKR0aMxoGA1MYHtqHmEA1u3QpRQ+lPdZFa/fNKmBrC6T0xZCAnqfc/41+Ujk8Usn" +
  19. "hJH1d2/U/Zyg";
  20. String publicKey =
  21. "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC3IDQWtbYc2T9ra/ONEhj0Y8Ff" +
  22. "PSlSb2Xl//axlJx9QLQO3OLnJr7nEyZmaEK5JObWFiL+BwAMhqyT/aqdXS1aIPOH" +
  23. "sZvmuURTkJhueRhDwZlP9AOyIb+OZ6YdnWGRXRHuY5HLFNW3FPAdSLiv1WJDvDhL" +
  24. "BBljhO+DZnJUWeFT8QIDAQAB";
  25. try {
  26. System.out.println("明文的aes的key = " + uuid);
  27. System.out.println("\n");
  28. System.out.println("============加密===============");
  29. String aesKey = RSAUtil.encryptByPublicKey(uuid, publicKey);
  30. password = AESUtil.encryptData(uuid, password);
  31. System.out.println("加密后 aesKey = " + aesKey);
  32. System.out.println("加密后 password = " + password);
  33. System.out.println("\n");
  34. System.out.println("============解密===============");
  35. String taesKey = RSAUtil.decryptByPrivateKey(aesKey, privateKey);
  36. String tpassword = AESUtil.decryptData(taesKey, password);
  37. System.out.println("taesKey = " + taesKey);
  38. System.out.println("tpassword = " + tpassword);
  39. Map<String, String> map = MapUtil.newHashMap();
  40. map.put("password", password);
  41. map.put("rsaEncryptKey", aesKey);
  42. return map;
  43. } catch (Exception e) {
  44. e.printStackTrace();
  45. }
  46. return MapUtil.newHashMap();
  47. }