校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Ajax跨域問題及解決方案(jsonp,cors)

Ajax跨域問題及解決方案(jsonp,cors)

熱門標簽:廣西智能外呼系統(tǒng)多少錢 平?jīng)龈叩碌貓D標注商戶要收費嗎 大學(xué)校門地圖標注 福建微碼電話機器人 荊州智能電銷機器人 地圖標注與公司業(yè)務(wù)關(guān)系 外呼系統(tǒng)api對接 銷售電銷機器人詐騙 提高電話機器人接通率

跨域

跨域有三個條件,滿足任何一個條件就是跨域

 1:服務(wù)器端口不一致
 2:協(xié)議不一致
 3:域名不一致

解決方案:

1.jsonp

  在遠程服務(wù)器上設(shè)法動態(tài)的把數(shù)據(jù)裝進js格式的文本代碼段中,供客戶端調(diào)用和進一步處理;在前臺通過動態(tài)添加script標簽及src屬性,表面看上去與ajax極為相似,但是,這和ajax并沒有任何關(guān)系;為了便于使用及交流,逐漸形成了一中非正式傳輸協(xié)議,人們把它稱作 jsonp 。

代碼如下:

html:

body>
  form action="/" method="post" enctype="multipart/form-data">
    input type="text" name="xinxi" id="info">br>
    input type="file" name="file" id="file">br>
    input type="button" value="提交" name="submit" id="btn">
  /form>
/body>
script src="./jquery.js">/script>
script>
  //提前寫好函數(shù),調(diào)用函數(shù)需要傳參
  function callback(data){
    alert(data);
  }
  //動態(tài)添加script標簽及src屬性
  $('#btn').on('click',function(){
    var sc = document.createElement('script');
    sc.src = 'http://soul:8888/kuayu?cb=callback';
    $('head').append(sc); 
  })
/script>  

js:

var http = require('http');
 var url = require('url');
 var server = http.createServer();
 server.listen('8888',function(){
   console.log('8888');
 });
 server.on('request',function(req,res){
   var urls = url.parse(req.url,true);
   if(urls.pathname == '/kuayu'){
     res.end('callback("jsonp")');//返回的數(shù)據(jù)需是前端定義的函數(shù)調(diào)用的形式
   }
 });

 運行結(jié)果:

 總結(jié)一下:

  jsonp的一個要點就是允許用戶傳遞一個callback參數(shù)給服務(wù)端, 然后服務(wù)端返回數(shù)據(jù)時會將這個callback參數(shù)作為函數(shù)名來包裹住JSON數(shù)據(jù), 這樣客戶端就可以隨意定制自己的函數(shù)來自動處理返回數(shù)據(jù)了。

  發(fā)現(xiàn)凡是擁有"src"這個屬性的標簽都擁有跨域的能力,比如script、img、iframe; src 的能力就是把遠程的數(shù)據(jù)資源加載到本地(圖片、JS代碼等);

2.cors

cors跨域的核心點是在服務(wù)端代碼中設(shè)置一個響應(yīng)頭即可

res.setHeader('Access-Control-Allow-Origin','*');

 html:

body>
  form action="/" method="post" enctype="multipart/form-data" id="form">
    input type="text" name="xinxi" id="info">br>
    input type="button" value="提交" name="submit" id="btn">
  /form>
/body>
script src="./jquery.js">/script>
script>
  $('#btn').on('click', function () {      
        $.ajax({
            url: 'http://soul:8888/kuayu',
            type:'delete',  
            async:false,
            success: function (data) {
              alert(data);
            },
        })
  })
/script>

js代碼:

body>
  form action="/" method="post" enctype="multipart/form-data" id="form">
    input type="text" name="xinxi" id="info">br>
    input type="button" value="提交" name="submit" id="btn">
  /form>
/body>
script src="./jquery.js">/script>
script>
  $('#btn').on('click', function () {      
        $.ajax({
            url: 'http://soul:8888/kuayu',
            type:'delete',  
            async:false,
            success: function (data) {
              alert(data);
            },
        })
  })
/script>

效果:

   很多人也認為使用CORS解決跨域很簡單,只需要在服務(wù)器添加響應(yīng)頭 “ Access-Control-Allow-Origin :* ” 就可以了,

其實不然,因為在CORS中,所有的跨域請求被分為了兩種類型,一種是簡單請求,一種是復(fù)雜請求 (嚴格來說應(yīng)該叫‘需預(yù)檢請求');簡單請求與普通的ajax請求無異;但復(fù)雜請求,必須在正式發(fā)送請求前先發(fā)送一個OPTIONS方法的請求已得到服務(wù)器的同意,若沒有得到服務(wù)器的同意,瀏覽器不會發(fā)送正式請求;

滿足以下所有條件,被視為簡單類型的請求:

1:請求方法必須是 GET、HEAD、POST中的一種,其他方法不行;

2:請求頭類型只能是 Accept、Accept-Language、Content-Language、Content-Type,添加其他額外請求頭不行;

3:請求頭 Content-Type 如果有,值只能是 text/plain、multipart/form-data、application/x-www-form-urlencoded 中的一種,其他值不行;

4:請求中的任意 XMLHttpRequestUpload  對象均沒有注冊任何事件監(jiān)聽器;

5:請求中沒有使用 ReadableStream 對象。(以上摘自西嶺老濕微信公眾號)

總結(jié)一下:

如果請求方式為get和post簡單請求,則只需要設(shè)置響應(yīng)頭:res.setHeader('Access-Control-Allow-Origin','*');來允許某一個域 或者 所有域進行數(shù)據(jù)共享;

若是其他方式的請求,會在發(fā)送真正的請求之前發(fā)送一個options請求,通過options請求里設(shè)置:res.setHeader('Access-Control-Allow-Methods', 'DELETE'),

告知服務(wù)器正式請求會使用哪一種 HTTP 請求方法。

總結(jié)

以上所述是小編給大家介紹的Ajax跨域問題及解決方案(jsonp,cors),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

您可能感興趣的文章:
  • 關(guān)于Ajax跨域問題及解決方案詳析
  • 詳解ajax跨域問題解決方案
  • 解決前端跨域問題方案匯總
  • ajax請求前端跨域問題原因及解決方案

標簽:德陽 邯鄲 樂山 內(nèi)江 海南 黔東 婁底 衡陽

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Ajax跨域問題及解決方案(jsonp,cors)》,本文關(guān)鍵詞  Ajax,跨域,問題,及,解決方案,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Ajax跨域問題及解決方案(jsonp,cors)》相關(guān)的同類信息!
  • 本頁收集關(guān)于Ajax跨域問題及解決方案(jsonp,cors)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    免费成人小视频| 中文字幕一区二区日韩精品绯色| 一级做a爱片久久| 一本到不卡免费一区二区| 国产精品国产自产拍高清av王其| 高清视频一区二区| 亚洲欧美视频一区| 欧美日韩在线观看一区二区 | 国产午夜一区二区三区| 国产成人精品免费看| 国产精品视频线看| 日本精品免费观看高清观看| 亚洲国产成人91porn| 精品日产卡一卡二卡麻豆| 国产成人av资源| 一区二区三区免费| 精品国产制服丝袜高跟| 国产成人免费xxxxxxxx| 一区二区三区在线免费播放| 日韩精品一区二区在线观看| 成人av动漫在线| 亚洲高清视频在线| 久久精品日韩一区二区三区| 欧美中文字幕一区二区三区亚洲| 麻豆视频一区二区| 国产精品每日更新在线播放网址| 欧美一区二区精品| 成人的网站免费观看| 丝袜亚洲精品中文字幕一区| 久久久久久久久久久黄色| 在线观看国产精品网站| 精品亚洲免费视频| 亚洲图片欧美综合| 欧美激情一区三区| 日韩午夜电影在线观看| 91丨porny丨户外露出| 久久国产精品免费| 一区二区三区不卡在线观看| 久久久久久久久久久久电影| 欧美人狂配大交3d怪物一区| 国产成人午夜精品5599| 日本中文一区二区三区| 亚洲乱码国产乱码精品精的特点| 精品电影一区二区三区| 欧美日本不卡视频| 一本一本久久a久久精品综合麻豆| 久久99久久久久久久久久久| 亚洲一区二区中文在线| 国产精品色眯眯| 精品不卡在线视频| 欧美日韩国产小视频| 91蝌蚪porny| 91在线视频网址| 激情亚洲综合在线| 偷拍亚洲欧洲综合| 亚洲在线一区二区三区| 国产精品天干天干在观线| 精品国产乱码久久久久久闺蜜| 在线看日本不卡| 色婷婷香蕉在线一区二区| 成+人+亚洲+综合天堂| 国产宾馆实践打屁股91| 国产一区二区影院| 激情综合色综合久久| 奇米影视一区二区三区| 亚洲va韩国va欧美va| 亚洲成人免费视频| 午夜精品久久久久久不卡8050| 亚洲人成在线播放网站岛国| 国产精品女人毛片| 国产精品视频麻豆| 国产精品你懂的在线欣赏| 久久久精品黄色| 欧美国产97人人爽人人喊| 欧美激情一区二区三区全黄| 久久精品亚洲国产奇米99| 国产亚洲成aⅴ人片在线观看 | 欧美日韩aaaaaa| 91久久一区二区| 精品视频999| 在线播放91灌醉迷j高跟美女| 欧美精品在线一区二区| 91精品国产一区二区人妖| 欧美xingq一区二区| 久久久无码精品亚洲日韩按摩| 国产视频视频一区| 国产精品久久99| 亚洲高清免费观看| 青青国产91久久久久久| 韩国女主播成人在线| 成人精品国产免费网站| 一本大道久久a久久精二百| 欧美视频一区二区| 日韩一区二区不卡| 久久九九国产精品| 一区二区三区中文免费| 午夜视频在线观看一区| 国模套图日韩精品一区二区| 丁香六月久久综合狠狠色| 91影院在线观看| 欧美精品少妇一区二区三区| 欧美精品一区二区三区四区| 国产精品蜜臀av| 亚洲国产成人精品视频| 国模少妇一区二区三区| 91视视频在线直接观看在线看网页在线看| 99精品视频一区二区三区| 欧美一区二区视频免费观看| 国产亚洲精久久久久久| 亚洲精品成a人| 精品一区二区三区香蕉蜜桃| 99久久精品一区| 欧美高清hd18日本| 国产色产综合色产在线视频 | 国产欧美日韩另类视频免费观看| 亚洲欧美日韩中文字幕一区二区三区| 亚洲在线一区二区三区| 国产精品影视网| 欧美日韩在线不卡| 国产精品乱人伦中文| 日韩经典一区二区| 国产成人一区二区精品非洲| 91网站黄www| 久久一夜天堂av一区二区三区| 亚洲卡通欧美制服中文| 风间由美性色一区二区三区| 在线观看国产一区二区| 国产亚洲综合性久久久影院| 亚洲成人免费视| jizz一区二区| 精品99一区二区| 亚洲美女屁股眼交3| 国产成人日日夜夜| 日韩精品一区二区三区三区免费| 亚洲欧美另类在线| 国产毛片精品视频| 555www色欧美视频| 一区二区三区在线不卡| 国产成人精品在线看| 欧美精品vⅰdeose4hd| 亚洲欧美日韩一区二区| 精品一二线国产| 91精品国模一区二区三区| 亚洲卡通动漫在线| av在线播放一区二区三区| 久久久久久久精| 激情图片小说一区| 日韩欧美在线影院| 亚洲电影你懂得| 色老综合老女人久久久| 亚洲国产精品成人综合色在线婷婷| 久久99久久精品| 精品日产卡一卡二卡麻豆| 日韩av在线发布| 欧美日韩大陆一区二区| 亚洲一二三四在线观看| 色成年激情久久综合| 综合激情成人伊人| av不卡免费电影| 中文字幕久久午夜不卡| 国产91精品免费| 国产精品污www在线观看| 国产成人综合在线| 欧美国产97人人爽人人喊| 成人爽a毛片一区二区免费| 国产午夜精品一区二区| 岛国一区二区三区| 中文幕一区二区三区久久蜜桃| 国产成人无遮挡在线视频| 国产欧美日韩在线观看| 成人av免费观看| 亚洲精品你懂的| 欧美色偷偷大香| 天天色天天爱天天射综合| 制服丝袜国产精品| 精品中文字幕一区二区| 久久久综合精品| 成人avav影音| 亚洲午夜久久久久久久久久久| 欧美三级中文字幕在线观看| 亚洲综合偷拍欧美一区色| 777a∨成人精品桃花网| 久久激情综合网| 欧美高清在线精品一区| 色国产精品一区在线观看| 日韩国产精品91| 久久久久久久久久久久久夜| 99国产精品久久| 日日摸夜夜添夜夜添精品视频| 日韩欧美电影一二三| 成人黄色小视频在线观看| 悠悠色在线精品| 日韩欧美一卡二卡| 成人h精品动漫一区二区三区| 亚洲精品写真福利| 日韩一区二区在线观看视频播放| 国产麻豆精品久久一二三| 亚洲精品视频一区| 欧美变态口味重另类| 91网址在线看|