javascript - 从响应中获取数据

标签 javascript angularjs

我收到了以下格式的回复,

{
  "access_token": "eWcWLctGW-_NgGVAmFbO9l-nt3yztFzlZCLLlilI9mGDcM5q8d0kQw0uzvFOoXynHcb-MuPVJGTGkSkBhrr69_-aN1r5j9zB4fCl4u4aqOQ-scNI36xgHeGYpXky60drIBpMI83FGqd9pMjL4GWXjFHq61nhJ6xkGj1u1r9a5u6EJrB1lfjNhljzC_j65xaqxtubQ4AglKFO2ib-levpvnd_bEU-QGQrtvS2QbaXhb_hlnX8czo61Gn_OQyBVk7HbN1SozxIPe3RBvf5AiCAouDMz1WMHy9ybVFy8SnoNIgszjo7Ev2IEWS9aFb87u6bvoJvSVJv7s3z-2GUvG2kwfOk2sUWrmq0QeIJJrYwdKQfs3T8HrK2MNKSGteJ04-O",
  "token_type": "bearer",
  "expires_in": 1799,
  "refresh_token": "f1005c7fd74247069dbdb078ee379410",
  "as:client_id": "438dc832-33c7-413b-9c71-d0b98a196e6a",
  "userName": "master",
  ".issued": "Fri, 20 Jan 2017 14:30:09 GMT",
  ".expires": "Fri, 20 Jan 2017 15:00:09 GMT"
}

我不确定如何访问 .issued.expiresas:client_id

我使用 Angular 并传递用户名、密码和 company_id 并以上述格式获取响应。

dataService.getAuthToken($scope.username, $scope.password, $scope.company_password).then(function (response) {
  
    //response data here

});

我可以通过使用 response.data.access_token 轻松获取 token_type、access_token,但不知道如何访问 .issued.expiresas:client_id

最佳答案

您可以通过索引器语法访问 JavaScript 中对象的每个属性,就像它是一个映射一样(因为对象是 JavaScript 中的映射):

var issued = response.data[".issued"];
var expires = response.data[".expires"];
var asClient_id= response.data["as:client_id"];

查看此链接:http://www.w3schools.com/js/js_objects.asp

Accessing Object Properties
You can access object properties in two ways:

objectName.propertyName
or
objectName["propertyName"]

关于javascript - 从响应中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41766168/

相关文章:

javascript - Angularjs:如何捕获 <td> 标记中的文本并在我的 Controller 中使用它

javascript - 使用 jQuery 提交 HTML 表单不起作用

javascript - 如何在两个TIME之间循环播放视频

javascript - 在使用数组填充初始化的数组上使用数组映射时出现意外行为

angularjs - Angular ui-grid 外部导出按钮

javascript - AngularJS 表达式中的尾随双引号

javascript - 在 Javascript 中对字符串内的整数重新编号

javascript - HTML 将剪贴板图像粘贴到文件输入

javascript - 我如何使用angularjs比较输入字段内的两个数字?

AngularJS 工厂在 ng-class 内的 body 标签不起作用