前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >html content属性_HTTP函数

html content属性_HTTP函数

作者头像
全栈程序员站长
发布2022-11-03 17:05:44
8760
发布2022-11-03 17:05:44
举报
文章被收录于专栏:全栈程序员必看

关于HttpEntity的用法

代码语言:javascript
复制
  HttpEntity表示http的request和resposne实体,它由消息头和消息体组成。
 从HttpEntity中可以获取http请求头和回应头,也可以获取http请求体和回应体信息。
HttpEntity的使用,与@RequestBody 、@ResponseBody类似。

HttpEntity的典型应用是配合RestTemplate,在微服务项目中的应用(参见API示例) 用户登录示例: 步骤一:在login.jsp发送ajax请求,发送之前添加请求头信息

代码语言:javascript
复制
$.ajax({
    type: "POST",
    url: targetUrl,
    data: user,//传递的参数
    dataType:"json",//前端可以接收服务器传过来的数据的类型,json
    contentType: "application/json",
    beforeSend: function(xhr){//请求发送之前执行函数,添加请求头
        xhr.setRequestHeader("token","shfashfdasfhdashfoasf");
    },
    success: function(user){
        alert(user.username);
    },
    error:function(){
        alert("异常,请检查");
    }

步骤二:action中提取RequestEntity中的请求头信息,并用ResponseEntity回应

代码语言:javascript
复制
@PostMapping(value = "/login")
@ResponseBody//返回的结果是响应体,返回的类型String,字符串中有中文,乱码了
public ResponseEntity<User> login(@RequestBody String userString, RequestEntity requestEntity) {
    System.out.println(requestEntity.getUrl());
    //通过请求实体对象获取请求头
    HttpHeaders requestHeaders = requestEntity.getHeaders();
    System.out.println(requestHeaders);
    System.out.println(requestHeaders.getContentLength());//内容的长度
    System.out.println(requestHeaders.getContentType());
    System.out.println(requestHeaders.getAccept());
    System.out.println(requestHeaders.getOrigin());
    System.out.println(requestHeaders.getFirst("token"));

    //创建一个响应头
    HttpHeaders responseHeader = new HttpHeaders();
    responseHeader.set("myResponseHeader","myValue");
    //userString绑定的请求体
    //登录成功,拿到一个user对象
    User user = new User();
    user.setUsername(userString.split("&")[0].split("=")[1]);
    user.setPassword(userString.split("&")[1].split("=")[1]);
    user.setId(1000001);
    user.setHead_img("/images/head.jpg");
    user.setBalance(1000);
    //现在返回登录的结果,json格式的字符串
    //user:响应体,responseHeader:响应头,本身就有默认的响应头,在这里是添加其他的响应头的信息
    //HttpStatus:响应的状态码
    return new ResponseEntity<User>(user, responseHeader, HttpStatus.OK);
}

执行结果:

响应的状态码

添加的

请求头信息

请求体

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/203453.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月23日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档