Commit c1cfedfc authored by Gwofoo's avatar Gwofoo

新增 点击大屏后顺利跳转新页面

parent 1da42e4e
package com.yeejoin.amos.api.tool.Config;
package com.yeejoin.amos.api.tool.config;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.jdbc.DataSourceBuilder;
......
package com.yeejoin.amos.api.tool.controller;
import com.yeejoin.amos.api.tool.face.service.LoginForwardService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.doc.TycloudResource;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.ServletException;
import java.io.IOException;
/**
* @author Gary.Li
* @date 2023/12/18
*/
@Controller
@TycloudResource(module = "atl", value = "dataApi")
@Api(tags = "场景案例跳转")
public class LoginForwardResource {
@Autowired
LoginForwardService loginForwardService;
@RequestMapping("/forward")
@ApiOperation(value = "获取场景大屏点击后的登录token")
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ResponseBody
public ResponseModel<String> getSceneLoginToken(){
return ResponseHelper.buildResponse(loginForwardService.querySceneLoginToken());
}
}
package com.yeejoin.amos.api.tool.face.orm.entity;
import lombok.AllArgsConstructor;
import lombok.Data;
/**
* @author Gary.Li
* @date 2023/12/18
*/
@Data
@AllArgsConstructor
public class SceneCasesLoginRequest {
String deviceId;
String loginId;
String password;
boolean remembered;
}
package com.yeejoin.amos.api.tool.face.service;
import com.yeejoin.amos.api.tool.face.orm.entity.SceneCasesLoginRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
/**
* @author Gary.Li
* @date 2023/12/20
*/
@Service
public class LoginForwardService {
@Autowired
RestTemplate restTemplate;
public String querySceneLoginToken() {
String loginUrl = "http://36.40.66.175:8089/privilege/v1/auth/dual/idpassword";
String loginId = "yeejoin_xl";
String plainPwd = "a1234560";
String encryptedPwd = "AC286A35E74D2DD2B09873DEA7813245";
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
// 自定义标头
headers.add("Product", "AMOS_STUDIO_WEB");
SceneCasesLoginRequest sceneCasesLoginRequest = new SceneCasesLoginRequest("1699861158791_4736F10B-37AA-493F-9A50-80C6A720BAB9",
loginId, encryptedPwd, false);
HttpEntity<SceneCasesLoginRequest> entity = new HttpEntity<>(sceneCasesLoginRequest, headers);
ResponseEntity<String> responseEntity = restTemplate.postForEntity(loginUrl, entity, String.class);
String resBody = responseEntity.getBody();
if (resBody == null) {
return "fail-to-get-token";
}
int start = resBody.indexOf("\"token\":\"") + 9;
if (start == -1 + 9) {
return "fail-to-get-token";
}
int end = start + 36;
return resBody.substring(start, end);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment