html content属性_HTTP函数

html content属性_HTTP函数关于HttpEntity的用法HttpEntity表示http的request和resposne实体,它由消息头和消息体组成。从HttpEntity中可以获取http请求头和回应头,也可以获取http请求体和回应体信息。HttpEntity的使用,与@RequestBody、@ResponseBody类似。HttpEntity的典型应用是配合RestTemplate,在微服务项目中的应用(参见API示例)用户登录示例:步骤一:在login.jsp发送ajax请求,发送之前添加请求头信息

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

关于HttpEntity的用法

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

Jetbrains全家桶1年46,售后保障稳定

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

$.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回应

@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.net/203453.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SSL协议概述和握手过程

    SSL协议概述和握手过程SSL协议主要是为了保证WEB通信的安全性,是基于TCP协议的SSL协议有三个特性:1.机密性SSL协议的机密性主要依靠的是对称加密体质,在通信过程中,使用对称密码进行加密解密保证信息的安全性。2.完整性SSL协议的完整性主要依靠的是散列技术,对分组数据进行压缩之后,利用散列函数获得哈希值,加在分组信息的尾部,并且利用对称密码进行加密之后再传输(在传输到TCP层之前还有一个动作

    2022年5月25日
  • Elasticsearch的使用场景深入详解「建议收藏」

    Elasticsearch的使用场景深入详解「建议收藏」了解了ES的使用场景,ES的研究、使用、推广才更有价值和意义。1、场景—:使用Elasticsearch作为主要的后端传统项目中,搜索引擎是部署在成熟的数据存储的顶部,以提供快速且相关的搜索能力。这是因为早期的搜索引擎不能提供耐用的​​存储或其他经常需要的功能,如统计。Elasticsearch是提供持久存储、统计等多项功能的现代搜索引擎。如果你开始一个新项目,我们建议您考虑使用Elas

    2022年6月12日
  • linux zip 删除源文件,linux zip命令参数及用法详解–linux压缩zip文件命令[通俗易懂]

    linux zip 删除源文件,linux zip命令参数及用法详解–linux压缩zip文件命令[通俗易懂]linux命令的基本用法是:zip[参数][打包后的文件名][打包的目录路径]linuxzip命令参数列表:-a将文件转成ASCII模式-F尝试修复损坏的压缩文件-h显示帮助界面-m将文件压缩之后,删除源文件-n特定字符串不压缩具有特定字尾字符串的文件-o将压缩文件内的所有文件的最新变动时间设为压缩时候的时间-q安静模…

    2022年10月20日
  • 数据库排名整理_时序数据库排名

    数据库排名整理_时序数据库排名1、编写一个SQL查询,获取Employee 表中第二高的薪水(Salary) 。+++|Id|Salary|+++|1|100||2|200

    2022年8月1日
  • Lunix基本操作命令

    Lunix基本操作命令

    2022年10月3日
  • 海思Hi3798MV300_Hi3798MV300H_Datasheet-系统[通俗易懂]

    海思Hi3798MV300_Hi3798MV300H_Datasheet-系统[通俗易懂]Hi3798MV300/Hi3798MV300H处理器子系统Hi3798MV300/Hi3798MV300H采用ARMCortex-A53MPCore四核处理器,Cortex-A53MPCore具有以下特点:处理器集成了256KBL2cache。支持ARMv8-A架构。支持DVFS自动调频调压和AVS自适应调压。安全子系统具有以下特性:…

    2022年6月29日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号