Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.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代码获取API结果_Javascript_Azure Api Management - Fatal编程技术网

无法使用javascript代码获取API结果

无法使用javascript代码获取API结果,javascript,azure-api-management,Javascript,Azure Api Management,我正在进行API管理和使用Javascript代码公开API 如果我去开发者门户并检查我的url它会给我正确的结果如下 Response content [{ "ContactId":1, "Name":"Debra Garcia", "Address":"1234 Main St", }, {"ContactId":2, "Name":"Thorsten Weinrich", "Address":"5678 1st Ave W", }] but using javascript code

我正在进行
API管理
使用Javascript代码公开API
如果我去
开发者门户
检查我的url
它会给我
正确的结果
如下

Response content
[{
"ContactId":1,
"Name":"Debra Garcia",
"Address":"1234 Main St",
},

{"ContactId":2,
"Name":"Thorsten Weinrich",
"Address":"5678 1st Ave W",
}]

but using javascript code I'm not getting anything Nor status error code :(
Js Code
<script type="text/javascript">
    $(function() {
        var params = {

            'subscription-key': 'mykey',
        };

        $.ajax({
            url: 'https://mydemo.azure-api.net/marketing/contacts?' + $.param(params),
            type: 'GET',
        })
        .done(function(data) {
            alert("success");
        })
        .fail(function() {
            alert("error");
        });
    });
</script>
响应内容
[{
“联系人ID”:1,
“姓名”:“黛布拉·加西亚”,
“地址”:“主街1234号”,
},
{“联系人ID”:2,
“姓名”:“Thorsten Weinrich”,
“地址”:“西区第一大道5678号”,
}]
但使用javascript代码,我不会得到任何信息,也不会得到状态错误代码:(
Js代码
$(函数(){
变量参数={
“订阅密钥”:“我的密钥”,
};
$.ajax({
网址:'https://mydemo.azure-api.net/marketing/contacts?“+$.param(params),
键入:“GET”,
})
.完成(功能(数据){
警惕(“成功”);
})
.fail(函数(){
警报(“错误”);
});
});
我需要在哪里调试?

确保您已使用正确的策略在API上启用CORS支持。下面有一个示例说明了如何执行此操作(下面的代码片段):


* 
http://contoso.com:81 

您遇到了什么样的错误?可能是XSS问题?没有错误:(什么是跨站点脚本问题?在浏览器中使用Fiddler()、开发工具(Chrome和Internet Explorer中的F12)或托管服务,如Runscope()作为API的解块代理。我将首先使用浏览器中的工具,并使用“网络”选项卡查看API HTTP调用返回的响应(400/500响应范围内的任何响应都不好)。@SimonW在F12获得200状态代码且请求正文中没有数据后,感谢您:(我需要配置的确切位置:O我已安装此安装包Microsoft.AspNet.WebApi.cors此策略是通过Azure API管理的发布者门户添加的。
<cors>
    <allowed-origins>
        <origin>*</origin> <!-- allow any -->
        <!-- OR a list of one or more specific URIs (case-sensitive) -->
        <origin>http://contoso.com:81</origin> <!-- URI must include scheme, host, and port. If port is omitted, 80 is assumed for http and 443 is assumed for https. -->
    </allowed-origins>
</cors>