Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.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 PUT请求错误_Javascript_Jquery_Json - Fatal编程技术网

Javascript JSON PUT请求错误

Javascript JSON PUT请求错误,javascript,jquery,json,Javascript,Jquery,Json,我正在尝试使用JSON对API进行PUT调用。我使用的是jQuery,从我所知道的情况来看,我的代码看起来是正确的: <script type="text/javascript"> $(document).ready(function () { $.ajax({ url: 'https://app.clickdimensions.com/Service.svc/v1/account/accountIdHere/capture',

我正在尝试使用JSON对API进行PUT调用。我使用的是jQuery,从我所知道的情况来看,我的代码看起来是正确的:

<script type="text/javascript">
    $(document).ready(function () {
        $.ajax({
            url: 'https://app.clickdimensions.com/Service.svc/v1/account/accountIdHere/capture',
            type: 'PUT',
            data: { 'reg_FirstName': 'First',
                    'reg_LastName': 'Last',
                    'reg_Phone': '123-342-1211',
                    'reg_Email': 'email@email.com',
                    'reg_Company': 'My Company',
                    'reg_Address1': '123 Traffic Lane',
                    'reg_Address2': '',
                    'reg_City': 'Atlanta',
                    'reg_State': 'GA',
                    'reg_Zip': '12232',
                    'reg_Country': 'United States'  
            },
            success: function() { alert('PUT completed'); }
        });
    });
</script>
我找遍了所有地方,尝试了所有我能找到的东西,但都没有用。因此,我认为我的代码执行JSON PUT调用可能是错误的。我的代码看起来错了吗?如果是这样的话,我怎样才能修复它。如果没有,你知道这个错误吗


谢谢

您的代码是正确的,但是不可能跨域执行PUT请求,除非您请求数据的域返回正确的头。

您的jQuery看起来不错。问题在于来源http://localhost:65116 访问控制允许源站不允许使用。


这意味着资源加载,这在大多数情况下都是多余的。如果您可以控制
https://app.clickdimensions.com/Service.svc/v1/account/accountIdHere/capture
您可以修改它以允许来自特定域的此类请求,或者您可以使用JSON而不是JSON来执行跨域请求,尽管我不确定在这样的实例中放置HTTP是否成功。据我所知,JSONP需要是一个HTTP GET。

谢谢,这实际上解释了很多。附近不会有任何类型的工作吧?这是其中一种情况,我可能不会从服务器端的人那里得到太多帮助。唯一的解决办法是在服务器上使用代理为您发出请求。javascript将从服务器请求数据,而服务器将从其他域请求数据。
XMLHttpRequest cannot load https://app.clickdimensions.com/Service.svc/v1/account/accountIdHere/capture. Origin http://localhost:65116 is not allowed by Access-Control-Allow-Origin.