導航:首頁 > 編程語言 > java返回jsonp

java返回jsonp

發布時間:2023-07-10 15:33:46

java如何提供介面接收前端傳送的數據並寫入資料庫

//前端要調用後端的介面可以是用jsonp
前端寫法:

$.ajax({
url:"/xxx.java",
data:{type:"xxx",a:"aaa"},
async:false,
dataType:"jsonp",
jsonp:"callback",
jsonpCallback:"returnLiveViewData",
success:function(msg){

},
error:function(){
alert(請求失敗);
}
};

//後端返回結果

"returnLiveViewData({"records": [{"name": "aaa", "IP": "11.11.11.11", "node": 114, },{"name": "bob", "IP": "11.11.11.22", "node": 115, },]}
)";

⑵ ajax跨域請求如何實現

方法一、 採用jsonp (只支持get請求,後端返回的jsonp格式json,後端無需做請求放行操作)

方式三: XHR2(XMLHttpRequest Level 2)

需要設置後端請求放行
response.setHeader(「Access-Control-Allow-Origin」,」*」);
response.setHeader(「Access-Control-Allow-Methods」,」GET,POST」);

1.可以獲取伺服器端的二進制數據。
2.可以友好的提交表單數據
3.可以上傳文件(內置控制上傳進度事件邏輯)
4.使用HTML表單來初始化一個FormData對象

⑶ jsonp返回的數據是什麼格式

jsonp主要是為了解決跨域訪問問題而產生的,其返回的數據格式一般就是一個js腳本,這個腳本有以下特點:

  1. 返回的js腳本通常是服務端動態生成的。

  2. 整個腳本通常有且僅有一條語句,且是一個函數調用。

  3. 腳本中調用到的函數,是頁面上存在的一個函數,其函數名通過get參數傳遞給服務端,服務端再將其回寫到js腳本中。

  4. 函數的參數,是服務端處理後的結果數據,以json格式直接寫在腳本中。這也是jsonp得名的由來。

因為,ajax是不允許跨域訪問的,所以要從其他站點獲取數據時,就需要經過一些特殊的手段才行,jsonp就是一種成本比較低的手段(此外還有服務端代理等方式)。jsonp主要是利用了<script><img><iframe>標簽可以跨域訪問的特點。具體的步驟如下:

  1. 首先,在本地頁面上事先准備好一個用於接受返回數據的函數,比如:function showList(listdata){...};

  2. 其次,在需要的時點靜態或動態地創建一個標簽,比如:<script type="text/javascript" src="http://another.website/jsonp_call?arg1=xx&arg2=xx&callback=showList"></script>,其中:

    1. another.website:是另外一個站點的域名或ip地址。

    2. jsonp_call:是該站點提供的一個動態內容訪問的服務,可用php、java等任何技術實現。

    3. arg1、arg2:是該服務所需要的參數

    4. callback:是用於返回結果的回調函數名。

  3. 然後,another.website站點接收到這個jsonp_call的請求後,進行相應的處理,並將放回的結果封裝為一個js腳本,其內容類似這樣的形式:showList([{id:1,name:'a'}, {id:2,name:'b'}, ..., {id:n,name:'NNN'}]);

  4. 最後,結果返回到客戶端後,就會自動解析並執行這個showList函數。

這樣就完成了從「向其他站點發起請求」到「接收其他站點的應答數據」的整個過程,並且突破了ajax跨域訪問的限制。

⑷ 如何在java代碼中執行jsonp請求

首先你要知道jsonp工作原理,實質上也就是利用了一些旁門左道(瀏覽器對資源文件無限制的特點)來進行的跨域訪問,能共用的技術是http,所以在java里可以使用httpclient工具來發送http請求,並把請求做成jsonp的請求模樣就行了。

⑸ java為什麼會有跨域問題

前言

相信大家在寫前端腳本的時候經常會遇到發送數據到後台的情況,但是由於瀏覽器的限制,不同域名之間的數據是不能互相訪問的,那前端怎麼和後端如何進行數據之間的交換呢?

JavaScript由於安全性方面的考慮,不允許頁面跨域調用其他頁面的對象,那麼問題來了,什麼是跨域問題?

答:這是由於瀏覽器同源策略的限制,現在所有支持JavaScript的瀏覽器都使用了這個策略。那麼什麼是同源呢?所謂的同源是指三個方面「相同」:

閱讀全文

與java返回jsonp相關的資料

熱點內容
伺服器網卡有什麼好處 瀏覽:90
javasql格式化 瀏覽:599
小愛同學機器人的命令詞 瀏覽:971
檢驗signature的php示例代碼 瀏覽:161
android內錄 瀏覽:776
騰訊雲輕量應用伺服器服務商 瀏覽:176
平板app打不開怎麼回事 瀏覽:317
九號怎麼用app控制前後移動 瀏覽:617
pdf瀏覽器預覽 瀏覽:695
六一兒童節程序員爸爸 瀏覽:166
農村電視天線加密 瀏覽:903
freepdfword 瀏覽:752
程序員怎麼做舔狗 瀏覽:584
怎麼保養汽車空調壓縮機 瀏覽:756
黑客與逆向工程師的python編程之道 瀏覽:864
企業信息化pdf 瀏覽:57
如何給男孩子解壓 瀏覽:735
伺服器雲轉發源ip 瀏覽:29
電腦伺服器地址指的什麼 瀏覽:955
蘋果怎麼下載匯成銀行app 瀏覽:899