首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用JavaScript或JQuery跨站点的GETting JSON数据

使用JavaScript或JQuery跨站点的GETting JSON数据
EN

Stack Overflow用户
提问于 2018-10-17 01:30:02
回答 2查看 192关注 0票数 0

我正在尝试从the following url获取一些JSON数据。我在做这件事上遇到了麻烦。

你看,我正在尝试通过NutriSlice整合学校的午餐菜单。我们使用的是名为RiseVision的数字标牌系统,他们有一个超文本标记语言小部件。当然,这意味着我只能使用超文本标记语言和JavaScript,这使得事情变得更加困难。

我的代码如下:

代码语言:javascript
复制
    <!DOCTYPE html>
<html>
<head lang="en">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta charset="UTF-8">
    <script src="https://code.jquery.com/jquery-2.2.0.js"></script>
</head>
<body>

    <div>test</div>

    <script>

    $.ajax({type: "get",
            url: "https://brf.nutrislice.com/menu/api/digest/school/black-river-falls-high-school/menu-type/lunch/date/2018/10/16/",
            data: {method: "getQuote",format: "json",lang: "en"},
            dataType: "jsonp",
            jsonp: "jsonp",
            jsonpCallback: "myJsonMethod"
    }); 

    function myJsonMethod(response){
  $("div").append(" " + response);
}
    </script>
</body>
</html>

没有什么能解决这个问题。什么都不会返回。为什么?我不确定我做错了什么。上面附加的链接显示了我在这里查看的API的Django页面。

非常感谢您的帮助!:)

编辑:

代码语言:javascript
复制
var obj = jQuery.parseJSON( response );
    $("div").append(" " + obj.menu_items[0]);

进一步说明:这是我需要的数据中的一个JSON示例。

代码语言:javascript
复制
{"date":"2018-10-16","menu_items":["Taco Meat","Shredded Cheddar","Tortilla Chips","Tortilla Shell"],"images":["https://client-food-images.nutrislice.com/images/WD/WDeTEDdT2YDit97pdpUq7T/1474319790_787275__taco.jpg.1024x0_q85.jpg","https://client-food-images.nutrislice.com/images/eR/eRQamewxbJbFdAAbkUa5UK/1472157292_144997__ShrededCheddarCheese-IGH.jpg.1024x0_q85.jpg","https://client-food-images.nutrislice.com/images/4N/4NrHbqSdtFSa9HjQTM4WwT/1472157795_18851__tortillachips-m.jpg.1024x0_q85.jpg","https://client-food-images.nutrislice.com/images/wx/wx7bT4QGjLD8wNuK9oMtki/1473879858_737966__tortilla.jpg.1024x0_q85.jpg"],"holiday_text":null}
EN

回答 2

Stack Overflow用户

发布于 2018-10-17 01:49:18

这将会起作用

代码语言:javascript
复制
$.ajax({
    type: "get",
    url: "https://brf.nutrislice.com/menu/api/digest/school/black-river-falls-high-school/menu-type/lunch/date/2018/10/16/",
    data: {
        method: "getQuote",
        format: "json",
        lang: "en"
    },
    dataType: "json",
    success: function(response) {
        console.log(response); // check the console
        $(".s").append(" " + response)// this will not work properly
    }
});

请记住,您正在尝试将json对象添加到html文档中,这将不会很好地显示,您将必须获取这些数据并以这样的方式使用它们,以便它们在div中正确显示。

票数 0
EN

Stack Overflow用户

发布于 2018-10-17 01:57:48

检查控制台(右键单击页面,然后检查元素)。你可能会看到类似这样的东西:

看起来您遇到了一种专门设计来防止您试图执行的操作的保护,即从未知位置发送对页面数据的请求。我不是CORB方面的专家,但希望这篇文章能为您指明正确的方向。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52840988

复制
相关文章

相似问题

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