微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

瞥见没有捕获ajax调用

我有一个ASP.NET MVC5单页Web应用程序,它使用 angularjs对ASP.NET Web API 2应用程序进行ajax调用,所有这些都在Chrome开发人员工具Network选项卡中可见.但是,Glimpse不捕获ajax调用,既不在HUD中,也不在Ajax选项卡中.我已将application / json添加到web.config中的glimpse内容类型中.我还在我的angularjs ajax调用添加了X-Requested-With标头:

$httpProvider.defaults.headers.common = { 'X-Requested-With': 'XMLHttpRequest' };

然而,HUD一直显示0个ajax请求,而Ajax选项卡中没有任何内容.还有什么我应该做的吗?我该如何解决这个问题?

解决方法

我知道这是一个老问题但是web config中的以下内容我有用:

<glimpse defaultRuntimePolicy="On" endpointBaseUri="~/Glimpse.axd">
    <runtimePolicies>
      <statusCodes>
        <add statusCode="201" />
        <add statusCode="202" />
        <add statusCode="203" />
        <add statusCode="204" />
        <add statusCode="404" />
      </statusCodes>
    </runtimePolicies>
</glimpse>

此外,Glimpse通过X-Requested-With:XMLHttpRequest标头识别AJAX调用.认情况下,AngularJS $http调用不包含此标头,因此它们不会显示在Glimpse的AJAX面板中.我们可以更改$httpProvider的认值以始终添加此标头…

app.config(['$httpProvider',function ($httpProvider) {
    $httpProvider.defaults.headers.common = { 'X-Requested-With': 'XMLHttpRequest' };
}]);

资料来源:http://anthonychu.ca/post/getting-angularjs-http-and-web-api-to-work-with-glimpse(注意链接示例中的不正确的情况,请使用上面的代替)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐