首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Java中从HTTP响应返回值

在Java中从HTTP响应返回值
EN

Stack Overflow用户
提问于 2018-10-16 00:05:56
回答 2查看 2.3K关注 0票数 1

我在使用ResponseEntity时遇到一个获取值的问题。最简单地说,在进行API调用并使用

代码语言:javascript
复制
ResponseEntity<String> response = *api call*
String value = response.getBody();

我把它作为输出

代码语言:javascript
复制
{"value":123456}

但是,我希望字符串: value仅等于123456,而不是简单地强制它。你有什么建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-10-16 04:15:08

不要使用string作为ResponseEntity对象的泛型。创建自己的对象,如下所示:

代码语言:javascript
复制
public class MyResponse {
    private String value;

    public String getValue () {
        return this.value;
    }

    public void setValue (String value) {
        this.value = value;
    }
}

然后像这样使用这个对象:

代码语言:javascript
复制
ResponseEntity<MyResponse> response = *api call*
String value = response.getBody().getValue();
票数 2
EN

Stack Overflow用户

发布于 2018-10-16 00:19:06

这种行为是正常的,因为您的ResponeEntity包装了一个字符串。

您应该使用定义属性value的类。

假设您有一个定义属性value的类MyClass (使用适当的getter),您所要做的就是按如下所示更改代码:

代码语言:javascript
复制
ResponseEntity<MyClass> response = *api call* 

String value = response.getBody().getValue();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52820695

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档