JSONP的工作原理是什么?
對于開發人員來說,離不開API的開發和調用,我們在日常開發中,如果調用了第三方的API,而且此第三方API是以json數據格式返回時,默認是無法直接調用的(比如AJAX調用),因為會涉及到跨域問題。如何解決JSON跨域調用呢?那就得用到JSONP!
JSON和JSONP的區別最簡單的理解:JSON是一種數據格式,而JSONP是一種數據調用的。還有一種不嚴謹的理解:帶callback的JSON是JSONP。
由于瀏覽器的同源策略,上網頁是無法和服務器直接溝通的,JSONP就是用來解決瀏覽器跨域數據訪問的。
JSONP的原理分析上面說到了,所有主流瀏覽器出于安全因素考慮都有同源策略,而HTML中的ltscriptgt標簽則不受此限制(ltscriptgt標簽沒有跨域限制)!所以我們可以利用這個特性來和第三方進行數據通訊。
JSONP整個工作流程大概如下:
1、調用方頁面上使用script標簽引用第三方API地址;
2、第三方響應的數據是JSON數據的包裝,格式如下:
callback({name:susan
java開發是如何解決ajax跨域問題的?
兩個解決方案
1.使用jsonp技術
2.響應頭攜帶安全信息
第一種jsop這種技術方案太老,第二種服務端對cors處理,第三種使用nginx做轉發