久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

No 'Access-Control-Allow-Origin' header is present on the requested resource.'Ajax跨域訪問解決方案

 KyunraWang 2017-06-15
No 'Access-Control-Allow-Origin' header is present on the requested resource.

當使用ajax訪問遠程服務器時,,請求失敗,瀏覽器報如上錯誤,。這是出于安全的考慮,,默認禁止跨域訪問導致的。

一,、什么是跨域訪問

舉個栗子:在A網站中,,我們希望使用Ajax來獲得B網站中的特定內容。如果A網站與B網站不在同一個域中,,那么就出現(xiàn)了跨域訪問問題,。你可以理解為兩個域名之間不能跨過域名來發(fā)送請求或者請求數(shù)據(jù),否則就是不安全的,??缬蛟L問違反了同源策略,,同源策略的詳細信息可以點擊如下鏈接:Same-origin_policy; 
總而言之,,同源策略規(guī)定,,瀏覽器的ajax只能訪問跟它的HTML頁面同源(相同域名或IP)的資源。

二,、解決方案

常用的解決方案有兩種,,可以分為客戶端解決方案和服務器端解決方案。先說服務器端解決方案:

  • 服務器端解決方案 
    在服務器端的filter或者servlet里面添加 
    response.setHeader("Access-Control-Allow-Origin", "*"); 
    “Access-Control-Allow-Origin”表示允許跨域訪問,,“*”表示允許所有來源進行跨域訪問,,這里也可以替換為特定的域名或ip。 
    很顯然,,這種方式對非網站擁有人員來說是不能做到的,。而且此種方式很容易受到CSRF攻擊。

  • 客戶端解決方案

$(function($){
      var url = 'http://*****/index';
      $.ajax(url, {
        data: {
          'cityname': '成都',
          'date': '2016.12.12'
        },
        dataType: 'jsonp',
        crossDomain: true,
        success: function(data) {
          if(data && data.resultcode == '200'){
            console.log(data.result.today);
          }
        }
      });

將ajax請求中的dataType屬性設置為“jsonp”,,jsonp是專門用來解決跨域訪問而誕生的。

    本站是提供個人知識管理的網絡存儲空間,,所有內容均由用戶發(fā)布,,不代表本站觀點。請注意甄別內容中的聯(lián)系方式,、誘導購買等信息,,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,,請點擊一鍵舉報,。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多