首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何从控制器发送JSON响应?

如何从控制器发送JSON响应?
EN

Stack Overflow用户
提问于 2019-10-17 22:27:30
回答 3查看 1K关注 0票数 0

我希望使用json将一个布尔值从我的控制器传递给javascript,但由于我对spring还不熟悉,所以找不到一种方法。

在使用servlet时,我们写道:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
response.getWriter().println(somevalue)

并且可以使用ajax接收somevalue。这里我的控制器方法是:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@RequestMapping(value = REGISTERACTION , method = RequestMethod.POST)
@ResponseBody
public boolean RegisterUser(@ModelAttribute("register") Register register,HttpServletRequest request, HttpServletResponse response)
{

    boolean Registrationsuccess = userService.RegisterUser(register);
    return Registrationsuccess;
}

因此,这里的布尔变量是Registrationsuccess,我想将它发送到js文件,并使用ajax接收它。

在我的javascipt函数中,它使用来调用onsubmit事件->

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 function AccountExists()
 {
 $.ajax({
        type: 'POST',
        url: 'registerProcess',
        success: function(data){    
        let detail = JSON.parse(data);
            if( data == true)
                alert("Success");
            else
                alert("Not ");
        }
 });

}

出错--

根据在请求中接收的主动协商头字段,目标资源不具有用户代理可以接受的当前表示,并且服务器不愿意提供默认表示。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-10-17 22:40:02

您需要使用ResponseEntity@RestController来进行JSON响应。

注意:@RestController包括注释@Controller@ResponseBody

试着用这个:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@RestController
@RequestMapping("controller")
public class Controller {

    @PostMapping("REGISTERACTION")
    public ResponseEntity<Boolean> RegisterUser(@ModelAttribute("register") Register register)
    {

       Boolean registrationSuccess = userService.RegisterUser(register);
       return new ResponseEntity<Boolean>(registrationSuccess , HttpStatus.OK);
    }

}
票数 0
EN

Stack Overflow用户

发布于 2019-10-17 22:36:23

尝试在控制器的方法中使用@ResponseBody注释。并将方法的返回类型更改为布尔值,然后返回Registrationsuccess而不是ModelAndView。

票数 0
EN

Stack Overflow用户

发布于 2019-10-17 22:45:33

您可以使用2种方法来实现这一点。

方法1:集模型属性和使用在jsp上可以找到的表达式语言

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
model.addAttribute("test",true);

在Jsp页面中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
${test}

方法2:如果您发送的是ajax请求而不是ModelAndView,创建一个对象,设置任何属性boolean并从方法@ResponseBody注释返回对象,您将在Ajax响应中获得json。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@RequestMapping(value = REGISTERACTION , method = RequestMethod.POST)
public @ResponseBody MyCustomObject RegisterUser(@ModelAttribute("register") Register register,HttpServletRequest request, HttpServletResponse response)
{

    boolean Registrationsuccess = userService.RegisterUser(register);
    MyCustomObject cusobj=new MyCustomObject();
    cusobj.setStatus(true);
    return cusobj;
}

不管您编写了什么代码,它都不会返回json(基本上是表单提交方法),所以您必须使用第一种方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58445095

复制
相关文章
响应json数据之发送ajax的请求
一、前端异步请求代码: <span style="font-size:14px;">$.ajax ({ type: "POST", //请求的方式 url: "outputservlet3", //请求url data: {}, //前端向后端传送的数据 dataType: "json", //数据格式json error: function () //请求错误的回调函数 { }, success: function () //请求成功的回调函数 { } })</span> 二、WEB-INF下的w
阮键
2019/12/25
4.7K0
Actframework中如何灵活控制JSON响应
@DiamondFsd 昨天写了一篇关于如何在Spring MVC中灵活控制JSON返回的博客,其中@JSON注解的思路和我在actframework的处理方式非常相似。 刚好昨天把actframework放上码云了,就这个话题写下 如何在ActFramework中控制JSON返回 首先是资源和服务。我将就@DiamondFsd的article的例子来做讲解 @Entity("article") public class Article extends MorphiaAdaptiveRecord<Artic
老码农
2018/06/27
9550
如何从网络发送文本
如果您想从您的网络平台发送文本,那么您可以在下面看到我们的流程。 最新的邮件数据库从您的网络平台为您提供任何类型的文本发送服务。 如果您想从您的 wordpress 或 php 或 html 网站发送文本,那么您应该从该网站了解它。
最新邮件数据库
2022/05/25
8510
HttpClient 发送Json
import com.fasterxml.jackson.databind.ObjectMapper; import msxf.model.People; import msxf.until.ImpalaJdbc; import msxf.until.NowDate; import org.apache.commons.configuration.PropertiesConfiguration; import org.apache.http.HttpS
shengjk1
2018/10/24
2.3K0
postman 发送json请求
Tags: 工具 Archives QR Code
简单、
2018/07/17
1.4K0
用于从 JSON 响应中提取单个值的 Python 程序
值提取是一个非常流行的编程概念,它用于各种操作。但是,从 JSON 响应中提取值是一个完全不同的概念。它帮助我们构建逻辑并在复杂数据集中定位特定值。本文将介绍可用于从 JSON 响应中提取单个值的各种方法。在开始值提取之前,让我们重点了解 JSON 响应的含义。
很酷的站长
2023/08/11
2110
用于从 JSON 响应中提取单个值的 Python 程序
@ResponseBody响应JSON 406
搭建SpringMVC(4.1),但是搭建完成以后发现使用@ResponseBody的ajax无法访问,总是出现406的问题。 首先怀疑的是配置问题,经过查明,影响SpringMVC的@ResponseBody注解的是:         <mvc:annotation-driven />,我发现我的配置中存在这个注解。同时又使用Spring文档中的自动配置相关解析类的方式再进行测试,发现还是没有解决问题。 同时在网上找到相关问题,发现是缺失jackson的jar。 <dependency>         
冷冷
2018/02/08
1.1K0
如何用GET的方式来发送json数据
curl -XGET 'http://192.168.5.182:9200/ecommerce/product/_search' -d' > { > "query":{ > "match_all":{} > } > }'
算法之名
2019/08/20
3.5K0
获取响应头与发送头
回复@TiAmo玲 1、获取请求头 想要获取请求头,就需要会用抓包工具,目前比较普遍的就是fiddler。大家可以在百度搜索下载。首先我们打开fiddler 你会发现左侧这里不停地增加,这里看到的就是
孟船长
2018/05/18
2K0
SpringMVC ResponseBody响应json数据
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
多凡
2019/11/01
8290
通过SpringMVC框架响应JSON数据
在SpringMVC框架(含SpringBoot框架)中,当处理请求的方法之前添加了@ResponseBody后,或在控制器类之前使用的是@RestController,处理请求的方法的返回值将作为响应到客户端的数据。
海拥
2021/08/23
1.2K0
Spring Boot API 的 Controller 如何获得发送的 JSON 数据
通常我们都会使用 POST 方法,在实际编程的时候我们应该如何获得发送的 JSON 数据呢?
HoneyMoose
2021/01/27
1.7K0
Spring Boot API 的 Controller 如何获得发送的 JSON 数据
PHP发送和接收JSON请求
现在微服务中,很多API由于需要传递的参数较多所以要求用包含所有参数的JSON数据作为POST请求的请求体来替代FormData传递参数的方式,在参数量较多时POST JSON要比POST FormData便于开发和测试,今天我们就来看一下在PHP中如何发送和接受JOSN POST,以及在Laravel框架中针对JSON Request提供的访问JSON请求数据的便捷方法。
KevinYan
2019/10/13
8.1K0
内核的“信号处理”——发送与响应
信号处理是写任何服务程序都逃避不了的问题。比如写TCP服务程序,一般都要将SIGPIPE设置为SIG_IGN。—— 当TCP连接由内核判定为已“中断”或者说“断连”,而应用层还在尝试往这个连接对应的套接字写入数据时,就会产生SIGPIPE信号。如果应用程序没有注册过SIGPIPE信号处理函数,内核则会执行SIGPIPE的默认处理即终止当前进程。但是对于TCP服务来说,出现这种情况是属于正常范围内(譬如对端直接RST了连接),所以服务程序应该直接设置忽略SIGPIPE。
glinuxer
2019/04/10
1.9K0
内核的“信号处理”——发送与响应
使用python通过http发送json
因为需要通过http协议向服务器post一些数据,于是用python写了一个相关小程序,没想到遇到了一些问题,于是就在这里将这个问题记录一下。
py3study
2020/01/13
3K0
httpclient post发送json数组并解决json乱码问题
业务: 客户端发送json数据,服务端进行解析 client发送json格式: {"data":[{"name":"1;,a","id_no":"222,a","cellphone":"123141a","abode_detail":"213,a","emp_add":"werew3a","app_no":"111111111111a","create_time":"11a"},{"name":"张三","id_no":"null","cellphone":"null","abode_detai
shengjk1
2018/10/24
4.2K0
Go Web编程--解析JSON请求和生成JSON响应
现在无论是网站、App、小程序还是移动端H5页面应用,都是采用前端与后端单独部署,相互之间以API接口交互的形式构建而成的。因为在结合可读性、编码数据大小和开发者使用难度上都JSON格式是一个比较好的选择,所以接口的数据格式通常都采用JSON,即前端在发送POST,PUT,PATCH请求添加,更改数据时会把数据以JSON格式放到请求的Body中。而后端则是所有数据都会以JSON格式返回。
KevinYan
2020/04/08
3.8K0
委托协议栈发送接受数据响应
上一篇文章说过网络收发功能是委托操作系统实现的,这里的委托就是指委托操作系统的协议栈,和DNS查询一样,建立连接和通信上层也需要使用到 Socket的,Socket用于提供计算机之间连接通信的管道,大致示意图如下所示:
小柔
2022/10/09
6010
委托协议栈发送接受数据响应
点击加载更多

相似问题

Spring :如何修改从控制器发送的json响应

22

如何从我的弹簧控制器发送json响应?

22

从Spring控制器方法发送Json响应的最佳实践

33

如何从.ashx发送JSON响应上传onUploadSuccess

11

无法从WebFilter发送json响应

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文