zoukankan      html  css  js  c++  java
  • js 中ajax请求时设置 http请求头中的x-requestd-with= ajax

    今天发现 AngularJS 框架的$http服务提供的$http.get() /$http.post()的ajax请求中没有带 x-requested-with字段。

    这样的话,后端的php 就无法判断 接受的http请求是否是 ajax请求了。

    怎么办呢,显然就是给http 请求头中 加上这个字段就可以了。

    1、AngularJS 中可以这样子

    I don't know well MVC3 but you can set a custom header for all request from AngularJS.

    Then on server side you just have to get this header and do what you want with request from angular.

    To have custom header in AngularJS just do this :

    angular.module('myModule', [])
    
        .config(['$httpProvider', function($httpProvider) {
    
            $httpProvider.defaults.headers.common["FROM-ANGULAR"] = "true";
    
        }])
    

      

    For use the X-Requested-With you have to do this too :

    $httpProvider.defaults.headers.common["X-Requested-With"] = 'XMLHttpRequest';
    

      It's not set by default anymore because a lot part of the community have to delete this header to enable CORS request

    2、JQuery 的 ajax方法同样提供了设置 http请求头的方法;

    <html>
    <head>
        <script src="./js/libs/jquery/jquery-1.11.2.min.js"></script>
    </head>
    <body>
    <script>
        window.onload= function(){
            alert('123  ');
            $.ajax({
                beforeSend : function (XMLHttpRequest) {
                    XMLHttpRequest.setRequestHeader("aadfasdfsdfasdsasasdcccc","ajax");
                },
                url: "test.html",
                context: document.body
            })
        }
    
    </script>
    </body>
    </html>
    

      

  • 相关阅读:
    hdu 6702 ^&^ 位运算
    hdu 6709 Fishing Master 贪心
    hdu 6704 K-th occurrence 二分 ST表 后缀数组 主席树
    hdu 1423 Greatest Common Increasing Subsequence 最长公共上升子序列 LCIS
    hdu 5909 Tree Cutting FWT
    luogu P1588 丢失的牛 宽搜
    luogu P1003 铺地毯
    luogu P1104 生日
    luogu P1094 纪念品分组
    luogu P1093 奖学金
  • 原文地址:https://www.cnblogs.com/oxspirt/p/4488530.html
Copyright © 2011-2022 走看看