java中的JSONP使用實(shí)例詳解
json和JSONP這二者在開發(fā)中還是很常見的,此處JSON暫且不說。
一個(gè)眾所周知的問題,Ajax直接請求普通文件存在跨域無權(quán)限訪問的問題,甭管你是靜態(tài)頁面、動(dòng)態(tài)網(wǎng)頁、web服務(wù)、WCF,只要是跨域請求,一律不準(zhǔn),這就是為什么要使用JSONP的原因(由于Web頁面上調(diào)用js文件時(shí)則不受是否跨域的影響(不僅如此,我們還發(fā)現(xiàn)凡是擁有”src”這個(gè)屬性的標(biāo)簽都擁有跨域的能力,比如<script>、<img>、<iframe>));
須知 ajax和jsonp其實(shí)本質(zhì)上是不同的東西。ajax的核心是通過XmlHttpRequest獲取非本頁內(nèi)容,而jsonp的核心則是動(dòng)態(tài)添加<script>標(biāo)簽來調(diào)用服務(wù)器提供的js腳本。
private void GetTop10() throws IOException { String jsonCallback = _request.getParameter("jsonCallback"); String id = _request.getParameter("id"); String return_JSONP = top10Setup.ReadTop10(id ); return_JSONP = jsonCallback + "(" + return_JSONP + ");"; System.out.println( return_JSONP ); _response.getWriter().println( return_JSONP ); }
前端代碼
function appendListOne() { $.jsonp({ 'contentType': "application/json; charset=utf-8", 'url': AjaxGetUrl, 'data': { dz_type: 'GetTop10', id: 17 }, 'dataType':"jsonp", 'callbackParameter':"jsonCallback", 'async':false, 'type': 'post', 'success': function (data) { console.warn( data ); $("#list1>tbody").empty(); var str=""; for(var key=0;key<data.dblist.length;key++){ var dd=data.dblist[key]; if(key <5){ str+='<tr><td><b class="ranking">' +(parseInt(key)+1)+ '</b><span class="name">'+dd.data_name+'</span></td>' + '<td> <span class="detail">'+dd.data_value+'.'+dd.data_value2+'.'+dd.data_value3+'.'+dd.data_value4 +'</span> </td> </tr>'; } } $("#list1>tbody").append(str); } }); }
以上所述是小編給大家介紹的java JSONP使用實(shí)例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
Spring boot定時(shí)任務(wù)的原理及動(dòng)態(tài)創(chuàng)建詳解
這篇文章主要給大家介紹了關(guān)于Spring boot定時(shí)任務(wù)的原理及動(dòng)態(tài)創(chuàng)建的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03java?list和map切割分段的實(shí)現(xiàn)及多線程應(yīng)用案例
這篇文章主要為大家介紹了java?list和map切割分段的實(shí)現(xiàn)及多線程應(yīng)用案例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12Java +Tomcat + SpringMVC實(shí)現(xiàn)頁面訪問示例解析
這篇文章主要介紹了Java +Tomcat + SpringMVC實(shí)現(xiàn)頁面訪問示例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07解決Callable的對象中,用@Autowired注入別的對象失敗問題
這篇文章主要介紹了解決Callable的對象中,用@Autowired注入別的對象失敗問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07mybatis 字段名自動(dòng)轉(zhuǎn)小寫的實(shí)現(xiàn)
這篇文章主要介紹了mybatis 字段名自動(dòng)轉(zhuǎn)小寫的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03SpringBoot 在測試時(shí)如何指定包的掃描范圍
這篇文章主要介紹了SpringBoot 在測試時(shí)如何指定包的掃描范圍,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11Springboot集成百度地圖實(shí)現(xiàn)定位打卡的示例代碼
本文主要介紹了Springboot集成百度地圖實(shí)現(xiàn)定位打卡的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-02-02