前端代码:
<script src="jquery-3.4.1.min.js"></script>
<script type="text/javascript">
function getUser(){
$.ajax({
url:"http://192.168.1.103:8080/user/getUserInfo?userId=123asdf123",
type:"POST",
xhrFields:{withCredentials:true},
crossDomain: true,
success:function(data){
$.ajax({
url:"http://192.168.1.103:8080/user/userCertificate",
type:"GET",
xhrFields:{withCredentials:true},
crossDomain: true,
success:function(data){
alert("SUCCESS!");
},
error : function(e) {
//alert("出错");
alert(e.responseText);
},
})
},
error : function(e) {
},
})
}
getUser();
</script>
后端代码:
package com.honeycombtech.industrialdiagnosis.controller;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
@RestController
@RequestMapping(value = {"/user"})
public class UserController {
private Logger log = Logger.getLogger(UserController.class);
@RequestMapping(value = {"/getUserInfo"},produces = {"application/json;charset=UTF-8"},method = RequestMethod.POST)
public String getUserInfo(HttpServletRequest request,String userId){//,String userName
HttpSession session = request.getSession();
session.setAttribute("userId",userId);
if(userId!=null && !userId.equals("null")&& !userId.equals("")) {
return "200";
}
return "500";
}
@RequestMapping(value = {"/userCertificate"},produces = {"application/json;charset=UTF-8"},method = RequestMethod.GET)
public String userCertificate(HttpServletRequest request, HttpServletResponse response){
JSONArray jsonArray = new JSONArray();
Map<String, Object> map = new HashMap<String, Object>();
Object id = request.getSession().getAttribute("userId");
String userId = String.valueOf(id);
map = diagnosticService.checkUserStatus(request,response,userId);
jsonArray.add(map);
return jsonArray.toString();
}
}
前后端交互案例
本文介绍了一个具体的前后端交互示例,包括使用jQuery发起AJAX请求从后端获取用户信息及证书的过程。前端通过POST方式调用后端API获取用户信息,并在成功后进一步发起GET请求获取用户证书。后端采用Spring框架,通过RestController接收请求并处理,利用Session存储和读取用户ID,最终返回JSON格式的数据。
2263

被折叠的 条评论
为什么被折叠?



