javascript - 在 Javascript 中通过 GET 请求处理 JSON

标签 javascript jquery rest get

我构建了一个以 json 输出形式提供数据的 php API,我需要通过 get 请求获取值,然后在页面上绘制为图形。

在此基本结构中,前端 Web 组件托管在与 api 相同的服务器上:

  • index.php
  • 图表.php
  • /API/
  • /api/源
  • /api/src/api.php

我目前在graph.php中的代码如下:

<script>
        var myJson;

        $.getJson('api/src/api.php/poll/results/current/13/', function(jd){
          myJson = jd.AnswerCount.1;
        });

        document.getElementById('jsonhere').innerHTML = myJson; //just to test
</script>

端点输出如下数据:

{"AnswerCount":{"1":5,"3":1,"2":2,"4":1,"5":5,"6":3,"7":2}}

我需要将其加载到键值对数组中,

1:5
3:1
2:2
4:1
...

然后被放入图形库。

如何修复我的代码/编写新代码来执行此操作?我被困在这里了。

编辑:

凭直觉,我通过 wireshark 记录了所有 get 请求,但从未向相关 url 发送任何请求。即使是空函数 {} ? http://grab.kfouwels.com/pmgW

最佳答案

  1. 您不能使用数字作为标识符,要访问 1 属性,您必须说 [1] 而不是 .1
  2. 您必须使用包含您的数据的变量,而不是 x,直到您尝试将其分配到某个地方才被提及
  3. Ajax 中的 A 代表异步。您必须在您的回调中处理您的数据,因为您传递给getJson 的函数将不会被调用,直到HTTP 响应到达但行开始于document。 get 将在发送 HTTP 请求后立即运行。

关于javascript - 在 Javascript 中通过 GET 请求处理 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18236249/

相关文章:

javascript - 键值对初始化不适用于变量?

javascript - 高精度 HTML5 地理定位和观察位置

javascript - 从 id 属性获取最后一个字符

java - 有没有办法告诉 servlet 容器一次生成一个资源实例?

python - 为什么 Civicrm Create Mailing 在 Scheduled 状态下创建它?

javascript - 如何将渲染的 Vue 组件作为参数传递?

javascript - Bootstrap 模式隐藏方法 - 无事件静默?

javascript - 如何使用 jQuery 或 javascript 删除文本

jQuery:选择器解析机制

java - 使用 wget 和 Nexus Rest API 进行奇怪的文件命名