區分同源與非同源

2019獨角獸企業重金招聘Python工程師標準>>> hot3.png

JSONP和AJAX相同,都是客戶端向服務器端發送請求:1、給服務器端傳遞內容2、從服務器端獲取數據 的方式

AJAX屬于同源策略

JSONP屬于非同源策略(跨域請求) -> 實現跨域請求的方式有很多種,只不過JSONP是最常用的

區分同源和非同源:

當前頁面的地址 ? && ?數據請求的接口地址

? ? 1)協議 ?2)域名或者IP 3)端口號

? ? 以上三部分完全相同屬于同源策略,就是用AJAX技術請求數據,如果有一個不同就屬于非同源策略,一般使用JSONP技術請求數據

JSONP的原理:JSONP請求一定需要對方的服務器做支持才可以

在script的世界中,沒有同源跨域這一說,只要你給我src屬性中的地址是一個合法的地址,script都可以把對應的內容請求回來,JSONP就是利用了script的這個原理
? ? 1、首先把需要請求數據的那個跨域的API數據接口的地址賦值給script的src屬性中

? ? 2、把當前頁面中的某一個函數名當做參數值傳遞給需要跨域請求數據的服務器(url問好傳參:callback=fn)

? ? 3、服務器接收到請求后,需要進行特殊的處理,把你傳遞進來的函數名和它需要給你數據拼接成一個字符串, 例如:我們傳遞進去的函數名是fn,它準備好的數據是"fn([{'name':'xxx'}])"

? ? 4、最后服務器把準備的數據通過HTTP協議返回給我們客戶端,客戶端發現其實就是讓我們的fn執行,而且還給fn傳遞了一堆的數據,那些數據就是我們想要的

jquery的ajax和JSONP的調用

? ? ajax:

? ? $.ajax({

????? ? url:"",

????? ? type:"",

????? ? dataType:"json",

????? ? data:null,

????? ? async:true,

????? ? timeout: 1000, ?//設置超時時間,一般都設置3000ms

????????cache:false, //設定get請求的時候不走緩存數據,原理就是在url后面加一個緩存數,默認值是true

????? ? success:function(data){},

????? ? error:function(data){}

????})

jsonp:都是GET和異步請求的,不存在其他的請求方式和同步請求,而且jquery會默認會給JSONP的請求清除緩存

$.ajax({

????? ? url:"",

????? ? dataType:"jsonp",

????? ? timeout: 1000, ?//設置超時時間,一般都設置3000ms

? ? ? ?jsonpCallback:"fn" //自定義傳遞給服務器的函數名,而不是jquery自動生成的

????? ? jsonp:"cb" ?//吧傳遞函數名的那個形參callback變為cb

????})

????

?

?

?

轉載于:https://my.oschina.net/u/3419199/blog/1528274

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/455167.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/455167.shtml
英文地址,請注明出處:http://en.pswp.cn/news/455167.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Golang語言寫99乘法表-雙重for循環

個人博客點這里 1. 標準寫法: for 表達式1;表達式2;表達式3{循環體 }2. 同時省略表達式1和表達式3 for 表達式2{循環體 } // 相當于while(條件)3. 同時省略3個表達式 for{循環體 } // 相當于while(true) // 注意:當for循環中,省略了表達式2,就相當于直接作用在了true上4. 其…

移動APP怎樣保存用戶password

<span style"font-size:14px;">為了更好的用戶體驗,移動APPclient一般都會將用戶信息進行保存以便興許能夠自己主動登錄.</span> 保存了用戶信息便涉及到了安全問題. 解決辦法大概有一下幾種: 1.首先,假設client和服務端都是你來設計開發,那么有兩種比較…

extjs2.0 文件上傳_extjs數據存儲與傳輸

本章內容qExt.data簡介qExt.data.ConnectionqExt.data.RecordqExt.data.Storeq常用proxyq常用readerq高級storeqEXT中的Ajaxq關于scope和createDelegate()qDWR與EXT整合10.1Ext.data簡介Ext.data在命名空間中定義了一系列store、reader和proxy。Grid和ComboxBox都是以Ext.data為…

盤點key value在各個編程語言中的類型

個人博客點這里 起步 在編程語言中,有這么一種數據類型,我們經常會使用到,他就是類似于json的鍵值對類型 那么今天我們就對比一下,在各大編程語言中的key value類型的特點 main python key value 叫做字典 dict類型 聲明 字典操作 以鍵值對方式存在的無序數據的組合就是…

音頻格式詳解 CD WAV MP3 WMA MIDI RM RA OGG VOF AAC M4A APE FLAC TAK TTA MV RealAudio AIFF AU

以下是常見音頻文件格式的特點。 要在計算機內播放或是處理音頻文件&#xff0c;也就是要對聲音文件進行數、模轉換&#xff0c;這個過程同樣由采樣和量化構成&#xff0c;人耳所能聽到的聲音&#xff0c;最低的頻率是從20Hz起一直到最高頻率20KHZ&#xff0c;20KHz以上人耳是聽…

Spring MVC-表單(Form)標簽-下拉框(Dropdown)示例(轉載實踐)

以下內容翻譯自&#xff1a;https://www.tutorialspoint.com/springmvc/springmvc_dropdown.htm 說明&#xff1a;示例基于Spring MVC 4.1.6。 以下示例顯示如何使用Spring Web MVC框架在表單中使用Dropdown。首先&#xff0c;讓我們使用Eclipse IDE&#xff0c;并按照以下步驟…

vuex的命名空間有哪些_Vuex在vue路由器中訪問命名空間模塊的getter

我試圖通過檢查用戶是否經過身份驗證來保護我的路由&#xff0c;這是示例路由&#xff1a;{path: /intranet,component: search,meta: { requiresAuth: true },props: {tax: type,term: intranet-post,name: Intranet}},我正在這樣設置警衛&#xff1a;router.beforeEach((to, …

阿里巴巴中文站架構設計實踐(何崚)圖書

阿里巴巴中文站架構實踐 何崚阿里巴巴 全文地址:阿里巴巴中文站架構設計實踐(何崚).pdf 更多課件可到:這里查看 后續內容還在更新…

使用sqlite3創建數據庫表的時候須要注意

使用sqlite3創建數據庫表的時候須要注意&#xff1a; 1. 不能使用純數字 2. 不能帶有"-",""等字符。也不能以數字打頭。一、以下是log打出來的信息&#xff1a; DB Error: 1 "unrecognized token: "47464636265757265763393573649"" D…

物聯網世界的承諾與挑戰

最初參與到與物聯網&#xff08;Internet of Things / IoT&#xff09;相關的行業對話時&#xff0c;我對整個行業的發展充滿疑問。“ 物聯網”和 “萬聯網”&#xff08;Internet of Everything&#xff09;有什么區別&#xff1f;這場變革現今是處于啟蒙階段&#xff0c;亦或…

音樂文件基本格式,wave,mod,midi,mp3,wma,flac

經典的WAVE WAVE文件作為最經典的Windows多媒體音頻格式&#xff0c;應用非常廣泛&#xff0c;它使用三個參數來表示聲音&#xff1a;采樣位數、采樣頻率和聲道數。 聲道有單聲道和立體聲之分&#xff0c;采樣頻率一般有11025Hz&#xff08;11kHz&#xff09;、22050Hz&#xf…

bilibili go框架_最好的開發語言一定是那位嗎?Go語言有話說

魯迅先生說過&#xff0c;所有能用 JS 寫的前端項目最終都會被用 JS 重寫一遍&#xff0c;所有能用 Go 寫的后端項目最終也都會被用 Go 重寫一遍。作為一名開發者&#xff0c;周六的我們能做什么呢&#xff1f;是因為產品經理的各種需求在加班嗎&#xff1f;給你說了實現不了實…

關于虛擬機棧的理解

虛擬機棧 虛擬機棧出現的背景 由于跨平臺性的設計,Java的指令都是根據棧來設計的. 不同平臺CPU架構不同,所以不能設置為基于寄存器的 優點是跨平臺,指令集小,編譯器容易實現,缺點是性能下降,實現同樣的功能需要更多的指令. 有不少Java開發人員一提到Java內存結構,就會非常粗…

抓取各個瀏覽器引擎關鍵字,,百度學術關鍵字

百度學術 $list_arr getbaiduxueshu($row[name]); $list_arr explode((,$list_arr); $list_arr explode(),$list_arr[1]); $list_arr json_decode($list_arr[0]); $list_arr $list_arr->s; //百度學術平臺熱詞地址function getbaiduxueshu($keyname 100){ $url http:…

wave格式分析,wave音頻文件格式分析配程序

wav文件格式分析詳解 程序如上一篇博文 一、綜述 WAVE文件作為多媒體中使用的聲波文件格式之一&#xff0c;它是以RIFF格式為標準的。RIFF是英文Resource Interchange File Format的縮寫&#xff0c;每個WAVE文件的頭四個字節便是“RIFF”。 WAVE文件是由若干個Chunk組成…

poi設置word表格單元格寬度_java poi如何設置word的頁面的大小和水平方向?

展開全部你好&#xff0c;試試以下代碼行不行。packagecom.sample;importjava.awt.color;importjava.io.fileoutputstream;importjava.io.ioexception;importcom.lowagie.text.cell;importcom.lowagie.text.document;importcom.lowagie.text.documentexception;importcom.lowag…

時間通用方法

import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date;import org.apache.commons.lang3.time.DateFormatUtils;/** * 日期工具類, 繼承org.apache.commons.lang.time.DateUtils類 */ public class DateUtils extends org.apache.commo…

Python-MongoDB的驅動安裝、升級

安裝pip&#xff0c;并通過此來安裝pymongo–Python mongodb驅動 1、下載pip安裝包&#xff0c;下載地址&#xff1a;http://pypi.python.org/packages/source/p/pip/pip-1.0.2.tar.gz#md547ec6ff3f6d962696fe08d4c8264ad49 2、解壓安裝&#xff1a; tar -zxf pip.1.0.2.tar.gz…

python5_python5

python2&python31.python2中print可加括號可不加括號&#xff0c;python3中print一定要加括號。2.python2中有range(),也有xrange(),python中只有range()。生成器。3.Python2中raw_input(),python3中input()。,,is賦值比較是否相等is 比較內存地址&#xff0c;id(內容)li1[…

單例設計模式1

單例 所謂單例設計模式,即時采取一定的方法保證在整個軟件系統當中,對于某個類只能存在一個對象實例,并且該類只提供一個其對象實例的方法(靜態方法) 惡漢式 優缺點說明: 優點:這種寫法比較簡單,就是在類裝載的時候就完成實例化.避免了線程同步問題 缺點: 在類裝載的時候就…