java-如何检查发送的响应类型(响应为 JSON 格式)

标签 java json gson

我正在尝试连接到以 JSON 格式返回数据的 API。 最初登录到该站点后,我会被分配一个 session ID - 在所有进一步的 API 调用中,我必须提供该 session ID 作为输入参数。

例如,现在我正在尝试调用 API。

如果我提供的 session ID 正确,则响应将采用我掌握的信息格式。

但是,如果我提供的 session ID 不正确,那么 JSON 响应将类似于以下内容 --

     {"code": "ERROR", "detail": "Session ID is invalid"}

我正在使用 Google GSON 将 json 响应映射到 java 类...我如何知道响应是否带有数据(即当我的 session ID 正确且 API 返回我期望的数据时) ,或者响应是否是上述格式。

我唯一能想到的是在响应字符串中搜索是否存在(例如)“ session ID 无效”。还有其他方法可以做到这一点吗?

最佳答案

您还可以检查 "code"\s*:\s*"ERROR",但也许您还会得到一个可以检查的 http 状态代码(也许您会得到 401 左右) )。

关于java-如何检查发送的响应类型(响应为 JSON 格式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8356805/

相关文章:

Java 程序是从 system32 文件夹加载的,而不是从它所在的文件夹加载的

java - JavaFX 应该取代 Swing 吗?

ruby - 在使用 Ruby 连接到 HTTPS url 并将源数据传递给 Nokogiri 方面需要帮助

python - Scrapy 返回的结果比预期多

java - 是否可以通过注释类的对象而不是注释字段来更改类的字段的 json 名称

java - 如何将 Json 属性名称映射到 Java 字段值

java - 人们怎样才能在使用 java applet 进行绘图的同时仍然拥有完整的功能呢?

python - 将 Ruby 中的 json 响应移植到 Python

android - gradle android studio 2.3 : failed to resolve 'com.google.code.gson:gson:2.8.0'

java - 从多层 json 获取错误 "Expected BEGIN_OBJECT but was STRING at line 1"