url地址跨域問題

來源:互聯網
上載者:User

標籤:

url地址跨域:當前url地址的網域名稱與要跳轉的url地址中的網域名稱不一樣

如果使用以下的ajax,請求參數類型設定為contentType:"appliaction/xml;charset=utf-8",請求類型設定為type: "POST"

<script type="text/javascript">
            $(function(){
                $(".submit").click(function(){
                    var xmlDocument = ‘<xml><a>123</a><b>123</b></xml>‘;
                     $.ajax({
                       type: "POST",
                       url:"url",           
                       contentType:"appliaction/xml;charset=utf-8",
                       data: xmlDocument,
                       dataType:"xml",
                       success:function(data){
                                    if (data.xml) {
                                        //IE
                                        alert(data.xml);
                                    }
                                    else {
                                        //Firefox
                                        var oSerializer = new XMLSerializer();
                                        alert(oSerializer.serializeToString(data));
                                    }
                                 },
                       error: function(e) {
                                alert(e);
                                }
                     });
                });
            });
        </script>

請求本文為:

Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Access-Control-Request-Method: POST
Access-Control-Request-Headers: content-type
origin: null
Connection: keep-alive

其中,

Access-Control-Request-Method: POST
Access-Control-Request-Headers: content-type

兩項會自動加上,並且請求方式改為OPTION,請求的參數會忽略

這兩項是用於提醒伺服器在接下來的請求中將會使用什麼樣的方法來發起請求

結論:當url跨域時,第一次請求會自動改為OPTION方式的請求用於探測後續真正需要發起的跨域 POST 請求對於伺服器來說是否是安全可接受的,因為跨域提交資料對於伺服器來說可能存在很大的安全問題。

 

url地址跨域問題

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.