@@ -0,0 +1,32 @@ | |||||
package cn.org.bjca.trust.java.imserver; | |||||
import org.springframework.context.annotation.Bean; | |||||
import org.springframework.context.annotation.Configuration; | |||||
import org.springframework.web.servlet.config.annotation.CorsRegistry; | |||||
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; | |||||
@Configuration | |||||
public class GlobalCorsConfig { | |||||
@Bean | |||||
public WebMvcConfigurer corsConfigurer() { | |||||
return new WebMvcConfigurer() { | |||||
@Override | |||||
//重写父类提供的跨域请求处理的接口 | |||||
public void addCorsMappings(CorsRegistry registry) { | |||||
//添加映射路径 | |||||
registry.addMapping("/**") | |||||
//放行哪些原始域 | |||||
.allowedOrigins("*") | |||||
//是否发送Cookie信息 | |||||
.allowCredentials(false) | |||||
//放行哪些原始域(请求方式) | |||||
.allowedMethods("GET", "POST", "PUT", "DELETE") | |||||
//放行哪些原始域(头部信息) | |||||
.allowedHeaders("*") | |||||
//暴露哪些头部信息(因为跨域访问默认不能获取全部头部信息) | |||||
.exposedHeaders("Header1", "Header2"); | |||||
} | |||||
}; | |||||
} | |||||
} | |||||
@@ -0,0 +1,43 @@ | |||||
package cn.org.bjca.trust.java.imserver; | |||||
public class HttpResult<T> { | |||||
/** | |||||
* "code": 200 | |||||
* "message": "success" | |||||
* data : | |||||
*/ | |||||
private int code; | |||||
private String msg; | |||||
private T data; | |||||
public HttpResult(int code, String msg, T data) { | |||||
this.code = code; | |||||
this.msg = msg; | |||||
this.data = data; | |||||
} | |||||
public int getCode() { | |||||
return code; | |||||
} | |||||
public void setCode(int code) { | |||||
this.code = code; | |||||
} | |||||
public String getMsg() { | |||||
return msg; | |||||
} | |||||
public void setMsg(String msg) { | |||||
this.msg = msg; | |||||
} | |||||
public T getData() { | |||||
return data; | |||||
} | |||||
public void setData(T data) { | |||||
this.data = data; | |||||
} | |||||
} |
@@ -11,6 +11,6 @@ public class HelloController { | |||||
@GetMapping("/{id}") | @GetMapping("/{id}") | ||||
public String getById(@PathVariable String id) throws Exception { | public String getById(@PathVariable String id) throws Exception { | ||||
System.out.println("id ==> " + id); | System.out.println("id ==> " + id); | ||||
return "{\n" + " \"msg\": \"qdxorigin\",\n" + " \"status\": \"201\",\n" + " \"data\": \"Sbfuiaefhaikufhcsauik\"\n" + "}"; | |||||
return "{\"msg\":\"qdxorigin\",\"code\":200,\"data\":\"Sbfuiaefhaikufhcsauik\"}"; | |||||
} | } | ||||
} | } |
@@ -0,0 +1,43 @@ | |||||
package cn.org.bjca.trust.java.imserver.controller.user.v1; | |||||
import cn.org.bjca.trust.java.imserver.entitys.DeviceEntity; | |||||
public class LoginBean { | |||||
private String userId; | |||||
private String userSig; | |||||
private DeviceEntity device; | |||||
public String getUserId() { | |||||
return userId; | |||||
} | |||||
public void setUserId(String userId) { | |||||
this.userId = userId; | |||||
} | |||||
public String getUserSig() { | |||||
return userSig; | |||||
} | |||||
public void setUserSig(String userSig) { | |||||
this.userSig = userSig; | |||||
} | |||||
public DeviceEntity getDevice() { | |||||
return device; | |||||
} | |||||
public void setDevice(DeviceEntity device) { | |||||
this.device = device; | |||||
} | |||||
@Override | |||||
public String toString() { | |||||
return "LoginBean{" + | |||||
"userId='" + userId + '\'' + | |||||
", userSig='" + userSig + '\'' + | |||||
", device=" + device + | |||||
'}'; | |||||
} | |||||
} |
@@ -0,0 +1,50 @@ | |||||
package cn.org.bjca.trust.java.imserver.controller.user.v1; | |||||
public class LoginData { | |||||
private String host; | |||||
private String port; | |||||
private String clientId; | |||||
private String sign; | |||||
public LoginData() { | |||||
} | |||||
public LoginData(String host, String port, String clientId, String sign) { | |||||
this.host = host; | |||||
this.port = port; | |||||
this.clientId = clientId; | |||||
this.sign = sign; | |||||
} | |||||
public String getHost() { | |||||
return host; | |||||
} | |||||
public void setHost(String host) { | |||||
this.host = host; | |||||
} | |||||
public String getPort() { | |||||
return port; | |||||
} | |||||
public void setPort(String port) { | |||||
this.port = port; | |||||
} | |||||
public String getClientId() { | |||||
return clientId; | |||||
} | |||||
public void setClientId(String clientId) { | |||||
this.clientId = clientId; | |||||
} | |||||
public String getSign() { | |||||
return sign; | |||||
} | |||||
public void setSign(String sign) { | |||||
this.sign = sign; | |||||
} | |||||
} |
@@ -0,0 +1,23 @@ | |||||
package cn.org.bjca.trust.java.imserver.controller.user.v1; | |||||
import cn.org.bjca.trust.java.imserver.HttpResult; | |||||
import jakarta.servlet.http.HttpServletRequest; | |||||
import org.springframework.beans.factory.annotation.Autowired; | |||||
import org.springframework.http.HttpHeaders; | |||||
import org.springframework.web.bind.annotation.*; | |||||
@RestController | |||||
@RequestMapping("user/v1") | |||||
public class UserV1Controller { | |||||
@Autowired | |||||
private HttpServletRequest request; | |||||
@PostMapping("/login") | |||||
public HttpResult<LoginData> getById(@RequestBody LoginBean user, @RequestHeader HttpHeaders headers) throws Exception { | |||||
System.out.println(headers.toString()); | |||||
System.out.println(headers.getFirst("appid")); | |||||
return new HttpResult<>(200, "成功", new LoginData("114.115.203.60", "18883", user.getUserId(), user.getUserSig())); | |||||
} | |||||
} |
@@ -0,0 +1,121 @@ | |||||
package cn.org.bjca.trust.java.imserver.entitys; | |||||
import org.springframework.lang.NonNull; | |||||
public class DeviceEntity { | |||||
private int _uid; | |||||
private String deviceId; | |||||
// 厂商 MANUFACTURER | |||||
private String manufacturer; | |||||
// 品牌 BRAND | |||||
private String brand; | |||||
// 型号 MODEL | |||||
private String model; | |||||
// cpu CPU_ABI | |||||
private String cpuAbi; | |||||
// 指纹 FINGERPRINT | |||||
private String fingerprint; | |||||
// SUPPORTED_32_BIT_ABIS | |||||
private String supported32BitAbis; | |||||
// SUPPORTED_64_BIT_ABIS | |||||
private String supported64BitAbis; | |||||
// SUPPORTED_ABIS | |||||
private String supportedAbis; | |||||
public void set_uid(int _uid) { | |||||
this._uid = _uid; | |||||
} | |||||
public int get_uid() { | |||||
return _uid; | |||||
} | |||||
public String getDeviceId() { | |||||
return deviceId; | |||||
} | |||||
public void setDeviceId(String deviceId) { | |||||
this.deviceId = deviceId; | |||||
} | |||||
public String getManufacturer() { | |||||
return manufacturer; | |||||
} | |||||
public void setManufacturer(String manufacturer) { | |||||
this.manufacturer = manufacturer; | |||||
} | |||||
public String getBrand() { | |||||
return brand; | |||||
} | |||||
public void setBrand(String brand) { | |||||
this.brand = brand; | |||||
} | |||||
public String getModel() { | |||||
return model; | |||||
} | |||||
public void setModel(String model) { | |||||
this.model = model; | |||||
} | |||||
public String getCpuAbi() { | |||||
return cpuAbi; | |||||
} | |||||
public void setCpuAbi(String cpuAbi) { | |||||
this.cpuAbi = cpuAbi; | |||||
} | |||||
public String getFingerprint() { | |||||
return fingerprint; | |||||
} | |||||
public void setFingerprint(String fingerprint) { | |||||
this.fingerprint = fingerprint; | |||||
} | |||||
public String getSupported32BitAbis() { | |||||
return supported32BitAbis; | |||||
} | |||||
public void setSupported32BitAbis(String supported32BitAbis) { | |||||
this.supported32BitAbis = supported32BitAbis; | |||||
} | |||||
public String getSupported64BitAbis() { | |||||
return supported64BitAbis; | |||||
} | |||||
public void setSupported64BitAbis(String supported64BitAbis) { | |||||
this.supported64BitAbis = supported64BitAbis; | |||||
} | |||||
public String getSupportedAbis() { | |||||
return supportedAbis; | |||||
} | |||||
public void setSupportedAbis(String supportedAbis) { | |||||
this.supportedAbis = supportedAbis; | |||||
} | |||||
@NonNull | |||||
@Override | |||||
public String toString() { | |||||
return "DeviceEntity{" + | |||||
"deviceId='" + deviceId + '\'' + | |||||
", manufacturer='" + manufacturer + '\'' + | |||||
", brand='" + brand + '\'' + | |||||
", model='" + model + '\'' + | |||||
", cpuAbi='" + cpuAbi + '\'' + | |||||
", fingerprint='" + fingerprint + '\'' + | |||||
", supported32BitAbis='" + supported32BitAbis + '\'' + | |||||
", supported64BitAbis='" + supported64BitAbis + '\'' + | |||||
", supportedAbis='" + supportedAbis + '\'' + | |||||
'}'; | |||||
} | |||||
} |
@@ -0,0 +1,50 @@ | |||||
package cn.org.bjca.trust.java.imserver.entitys; | |||||
public class HttpHeaders { | |||||
private String AppID; | |||||
private String UserId; | |||||
private String Version; | |||||
private String OsType; | |||||
public String getAppID() { | |||||
return AppID; | |||||
} | |||||
public void setAppID(String appID) { | |||||
AppID = appID; | |||||
} | |||||
public String getUserId() { | |||||
return UserId; | |||||
} | |||||
public void setUserId(String userId) { | |||||
UserId = userId; | |||||
} | |||||
public String getVersion() { | |||||
return Version; | |||||
} | |||||
public void setVersion(String version) { | |||||
Version = version; | |||||
} | |||||
public String getOsType() { | |||||
return OsType; | |||||
} | |||||
public void setOsType(String osType) { | |||||
OsType = osType; | |||||
} | |||||
@Override | |||||
public String toString() { | |||||
return "HttpHeaders{" + | |||||
"AppID='" + AppID + '\'' + | |||||
", UserId='" + UserId + '\'' + | |||||
", Version='" + Version + '\'' + | |||||
", OsType='" + OsType + '\'' + | |||||
'}'; | |||||
} | |||||
} |
@@ -0,0 +1,35 @@ | |||||
package cn.org.bjca.trust.java.imserver.enums; | |||||
public enum MsgType { | |||||
UNKNOWN(-1) /* 未知 */, | |||||
Text(1) /* 文本 */, | |||||
Voice(2) /* 语音 */, | |||||
Image(3) /* 图片 */, | |||||
Location(4) /* 位置 */, | |||||
Video(5) /* 视频 */, | |||||
File(6) /* 文件 */, | |||||
At(7) /* @我 */, | |||||
READ(8) /* 已读 */, | |||||
REVOKE(9) /* 撤回 */, | |||||
DELETE(10) /* 删除 */, | |||||
Other(101) /* 自定义消息 */, | |||||
Notify(999); | |||||
private int type = -1; | |||||
MsgType(final int type) { | |||||
this.type = type; | |||||
} | |||||
public int type() { | |||||
return this.type; | |||||
} | |||||
public static MsgType getType(final int type) { | |||||
for (final MsgType value : MsgType.values()) { | |||||
if (value.type == type) { | |||||
return value; | |||||
} | |||||
} | |||||
return UNKNOWN; | |||||
} | |||||
} |
@@ -0,0 +1,29 @@ | |||||
package cn.org.bjca.trust.java.imserver.enums; | |||||
public enum OsType { | |||||
UNKNOWN(-1), | |||||
ANDROID(1), | |||||
WEB(2), | |||||
IOS(3), | |||||
MAC(4), | |||||
PC(5); | |||||
private int type = -1; | |||||
OsType(final int type) { | |||||
this.type = type; | |||||
} | |||||
public int type() { | |||||
return this.type; | |||||
} | |||||
public static OsType getType(final int type) { | |||||
for (final OsType value : OsType.values()) { | |||||
if (value.type == type) { | |||||
return value; | |||||
} | |||||
} | |||||
return UNKNOWN; | |||||
} | |||||
} |