【问题标题】:how to get the firstname and email from a JSON response如何从 JSON 响应中获取名字和电子邮件
【发布时间】:2016-06-18 06:05:20
【问题描述】:
{
  "userId": 1,
  "userName": "username",
  "firstName": "firstname",
  "lastName": "lname",
  "middleInitial": null,
  "email": "nsk@gmail.com",
  "dob": -250666200000,
  "phoneNo": 2066628405,
  "workPhone": null,
  "mobileNo": 2036321543,
  "status": null,
  "address": null,
  "group": null
}

【问题讨论】:

  • 请提供更多详细信息,您发布的内容没有上下文。
  • 这个问题有它需要的所有上下文。有一个 json 对象,用户想要获取其中的一些值。
  • @IdanAdar 除了没有“JSON 对象”之类的东西。有 JavaScript 对象,有 JSON 表示为字符串。 OP 显示的是一个普通的旧 JS 对象。
  • 我从 restfull web 服务得到了上面的 json 响应。我使用 HTTP 适配器。我需要在首页打印名字和电子邮件

标签: javascript json


【解决方案1】:

我不知道 json 是什么。

它是来自 ajax 的响应还是 JavaScript 页面上的变量。我认为它是一个变量;

var myjson={
  "userId": 1,
  "userName": "username",
  "firstName": "firstname",
  "lastName": "lname",
  "middleInitial": null,
  "email": "nsk@gmail.com",
  "dob": -250666200000,
  "phoneNo": 2066628405,
  "workPhone": null,
  "mobileNo": 2036321543,
  "status": null,
  "address": null,
  "group": null
}

你可以通过调用 as 来获取名字和姓氏

myjson.firstName;

myjson.email;

您需要的任何地方。您需要进一步了解 JSON 及其用法:

http://www.w3schools.com/js/js_json.asp 和在线解析器 http://pro.jsonlint.com/

【讨论】:

    【解决方案2】:

    我会用一些代码来回答你的问题。我假设您正在使用 WLResourceRequest 但无论您返回的响应是什么看起来都一样。我们将响应作为 JSON 对象返回,其中可能包含一些您不关心的键值。

    您感兴趣的关键是 responseJSON,它是一个 JSON 对象。这是您的适配器信息所在的位置。要访问该值,请参阅下面的 onResponseSuccess 消息。

    查看您的问题,您期望返回的对象是:

    {
      "userId": 1,
      "userName": "username",
      "firstName": "firstname",
      "lastName": "lname",
      "middleInitial": null,
      "email": "nsk@gmail.com",
      "dob": -250666200000,
      "phoneNo": 2066628405,
      "workPhone": null,
      "mobileNo": 2036321543,
      "status": null,
      "address": null,
      "group": null
    }
    
    var resourceRequest = new WLResourceRequest(
          "adapter/path",
          WLResourceRequest.GET
    );
    
    resourceRequest.send().then(
          this.onResponseSuccess,
          this.onResponseFailure
    );
    
    onResponseSuccess(response) {
       var <value> = response.responseJSON.<key>
    }
    

    key 和 value 是 JSON 对象中的键值对。 你的响应对象看起来像

    response : {
        status : 200,
        resonseText : "some long straing that is JSON stringified",
        responseJSON: {
           "userId" : 1,
           "username": "username",
           ...
           "group": null
        }
    }
    

    要访问“userId”,您将执行 response.responseJSON.userId

    【讨论】:

      【解决方案3】:

      如果响应是一个字符串,你可以使用

      来解析响应

      var jsondata = JSON.parse(res);

      您可以使用 jsondata.firstname 或 jsondata.email 获取任何参数

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-02-07
        • 2021-05-19
        • 2021-09-10
        • 1970-01-01
        • 2023-01-07
        • 2021-08-13
        • 1970-01-01
        相关资源
        最近更新 更多