欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Ajax的問題(跨域)

ajax往自己的域名訪問是可以,如果向別的域名訪問就會報錯。
這一版是請求發(fā)過去了,服務器也給返回數(shù)據(jù)了,但是瀏覽器會給報錯(瀏覽器遵:同源策略)。他的這個策略把ajax跨域發(fā)送請求時,再回來時候瀏覽器阻止了。

成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務,包含不限于成都做網(wǎng)站、網(wǎng)站建設、外貿(mào)營銷網(wǎng)站建設、互助網(wǎng)絡推廣、微信平臺小程序開發(fā)、互助網(wǎng)絡營銷、互助企業(yè)策劃、互助品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;成都創(chuàng)新互聯(lián)公司為所有大學生創(chuàng)業(yè)者提供互助建站搭建服務,24小時服務熱線:028-86922220,官方網(wǎng)址:www.aaarwkj.com

JSONP

jsonp 就是鉆空子,瀏覽器雖然禁止ajax跨域,但是允許script(src)的代碼不禁止,可以把這個用jquery cdn的方法
使用方法:

  • 發(fā)送:--->>在自己的頁面創(chuàng)建一個script標簽,讓它的src=‘http://baidu.com/?p=1’這樣鉆過去

https://www.cnblogs.com/xiaohuochai/p/6568039.html
這個博客寫的非常好

跨站練習

環(huán)境設置

啟動兩個項目一個端口為8001,一個為8000,端口8001提供數(shù)據(jù)。通過8000端口的程序來獲取8001提供的數(shù)據(jù)

8001的代碼
from django.shortcuts import render,HttpResponse
import json
def user_jsonp(request):
    print('請求來了。。。')
    user_list=[
        'zhang','wang','li','zhao'
    ]
    temp = json.dumps(user_list)
    return HttpResponse(temp)
8000的代碼
def user(request):
    return render(request,'user.html')
<body>
<input type="button" value="獲取信息" onclick="showdata();">
<div>
    <ul id="user_list">

    </ul>
</div>
<script>
    function showdata() {
        xhr = new XMLHttpRequest();
        xhr.onreadystatechange=function () {
            if(xhr.readyState==4){
                var content = xhr.responseText;
                console.log(content)
            }
        }
        xhr.open('GET','http://127.0.0.1:8001/user_jsonp/');
        xhr.send()
    }
</script>

</body>

這個時候兩個項目啟動起來后,8000頁面點擊獲取來獲取8001的數(shù)據(jù)時候是出錯的(瀏覽器的同源策略)報錯如下:
(index):1 Failed to load http://127.0.0.1:8001/user_jsonp/: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://127.0.0.1:8000' is therefore not allowed access.
這個就是同源策略阻止了ajax的訪問。為了解決這個問題,我們可以送script的js的方式來解決
如下面的代碼:

    function showdata() {
        var tag = document.createElement('script');
        tag.src='http://127.0.0.1/8001/user_jsonp/';
        document.head.appendChild(tag)
    }

這里通過scirpt的方式已經(jīng)跨過站了,數(shù)據(jù)已經(jīng)存儲到了內(nèi)存中,下面我們?nèi)绾螐膬?nèi)存里面拿到8001的值那?如果這里有一個變量的換,我們是可以通過變量來獲取的 ,通過這個思路,出現(xiàn)了下面的這個代碼
數(shù)據(jù)端8001這邊在返回的時候返回一個fun(xxx)這么類型的一個字段,前端來獲取這個
8001代碼:

from django.shortcuts import render,HttpResponse
import json
def user_jsonp(request):
    v = request.GET.get('funname')
    print('請求來了。。。')
    user_list=[
        'zhang','wang','li','zhao'
    ]
    # temp = json.dumps(user_list)
    user_list_str = json.dumps(user_list)
    temp = "%s(%s)"%(v,user_list_str)
    return HttpResponse(temp)

8000前端獲取的8001的返回后,做如下處理

    function showdata() {
        var tag = document.createElement('script');
        tag.src='http://127.0.0.1/8001/user_jsonp/?funname=bbb';
        document.head.appendChild(tag)#這里返回的是一個bbb(xx),然后bbb就會執(zhí)行下面的bbb函數(shù)
    }
    function bbb(arg) {
        console.log(arg)
    }

現(xiàn)在大家默認函數(shù)會是callback

通過ajax 實現(xiàn)jsonp的方式

Ajax的問題(跨域)

jsonp只能通過get方式,你寫了post,內(nèi)部還是get請求。而且是雙方約定的

cros跨站

http://www.cnblogs.com/wupeiqi/articles/5703697.html

cros 就是服務端返回的字符串帶著一個字段,告訴瀏覽器不要阻止。

        簡單請求:

            def new_users(request):
                obj = HttpResponse('返回內(nèi)容')
                obj['Access-Control-Allow-Origin'] = "*"
                return obj
        復雜請求:
            def new_users(request):

                if request.method == "OPTIONS":
                    obj = HttpResponse()
                    obj['Access-Control-Allow-Origin'] = "*"
                    obj['Access-Control-Allow-Methods'] = "DELETE"
                    return obj

                obj = HttpResponse('asdfasdf')
                obj['Access-Control-Allow-Origin'] = "*"
                return obj
        其他:
            - 任何請求

文章名稱:Ajax的問題(跨域)
URL分享:http://www.aaarwkj.com/article44/gjgdhe.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、網(wǎng)站設計、外貿(mào)建站、靜態(tài)網(wǎng)站網(wǎng)站收錄、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設
中文字幕人妻秘书社长| 我想看日韩一级黄色片| 国产三级三级三级三级| 日韩一区二区三精品| 日韩暴露一区二区三区| 初爱视频教程完整版韩国| 91中文在线视频播放| 婷婷六月亚洲中文字幕| 亚洲精品欧美综合二区| 高颜值紧身牛仔裤国产精品 | 国产亚洲视频一区二区观看| 久久中文字幕一区二区三区| 国产av爆操黑丝美女| 久久精品一区二区三区乱码| 日韩精品诱惑一区二区| 国产精品男人在线播放| 在线中文字幕日韩有码| 欧美日韩精品一区二区三| 久久国产麻豆精品电影| 丰满少妇在线观看网站| 日韩欧美一区二区不卡在线| 亚洲一区日韩精品颜射| 日韩毛片中文字幕在线观看 | 亚洲综合色视频免费在线播放| 九九视频在线精品免费观看| 国产精品日本在线观看| 亚洲男人天堂日本一区| 婷婷色悠悠,色悠悠激情啪啪| 末满18周岁禁止观看| 日韩国产人妻一区二区| 亚洲综合一区二区精品久久| 日本一二三四卡久久精品| 亚洲人成网站18禁止人| 蜜臀视频网站在线观看| 免费国产网站在线观看不卡| 一区二区三区精品人妻| 91九色蝌蚪国产欧美亚洲| 亚洲成av人片乱码午夜| 国产三级自拍视频在线观看网站 | 欧美日韩亚洲人人夜夜澡| 日韩av在线高清播放|