Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取Json文件时出错_Javascript_Jquery_Html_Json_Web Scraping - Fatal编程技术网

Javascript 获取Json文件时出错

Javascript 获取Json文件时出错,javascript,jquery,html,json,web-scraping,Javascript,Jquery,Html,Json,Web Scraping,我正在尝试为脚本编写代码,以检查Udemy上优惠券代码的有效性。课程id为1524736,本案例的CouponCode为UDEMYSTUDIO 我正在使用$.getJSON从站点请求信息,但它无法处理以下错误: 加载失败 : 请求的服务器上不存在“Access Control Allow Origin”标头 资源因此,不允许访问源“null” 我如何修复它?有没有更好的方法? 提前谢谢 下面是我正在使用的代码 <!DOCTYPE html> <html lang="en"&g

我正在尝试为脚本编写代码,以检查Udemy上优惠券代码的有效性。课程id为1524736,本案例的CouponCode为UDEMYSTUDIO

我正在使用$.getJSON从站点请求信息,但它无法处理以下错误:

加载失败 : 请求的服务器上不存在“Access Control Allow Origin”标头 资源因此,不允许访问源“null”

我如何修复它?有没有更好的方法? 提前谢谢

下面是我正在使用的代码

 <!DOCTYPE html>
<html lang="en">
<head>
<title>JavaScript - read JSON from URL</title>
    <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
</head>

<body>
    <div class="mypanel"></div>

    <script>
        var url= 'https://www.udemy.com/api-2.0/course-landing-components/1524736/me/?components=redeem_coupon&couponCode=UDEMYSTUDIO'
    $.getJSON(url, function(data) {

        var text = `Apply_State: ${data.redeem_coupon.is_applied}<br>
                    Error: ${data.redeem_coupon.error}<br>
                    Code: ${data.redeem_coupon.code}`


        $(".mypanel").html(text);
    });
    </script>

</body>
</html>
跨源资源共享CORS是一种使用 允许用户代理获得访问权限的附加HTTP头 来自不同于的源域上的服务器的所选资源 当前正在使用的站点。用户代理生成跨源HTTP 当它从不同的域、协议、, 或端口,而不是当前文档的源端口

由于您的站点托管在与udemy不同的域中,并且不明确允许您从特定域或所有域访问其资源,因此浏览器将拒绝响应,因为它强制执行CORS策略

阅读更多

你怎么解决这个问题

检查udemy是否公开了您可以使用的api或某种跨域模式

在同一域中创建对服务器的请求,服务器将创建对udemy的服务器到服务器请求并返回响应


谢谢你的帮助,你能详细说明一下它应该如何实现吗?因为我是一个网络开发的初学者,多给我一点帮助会让事情变得更简单。