導航:首頁 > 軟體知識 > 小程序如何跨域獲取動態數據

小程序如何跨域獲取動態數據

發布時間:2023-06-13 20:45:45

小程序怎麼解決跨域問題

你如果不在伺服器處理的話。就需要添加安全域名了。前提是這些域名是你名下可控的。

② jquery ajax 怎樣跨域獲取 json 數據

jsonp是英文json with padding的縮寫。它允許在伺服器端生成script tags至返回至客戶端,也就是動態生成javascript標簽,通過javascript callback的形式實現數據讀取。
html頁面端示例代碼:

復制代碼代碼如下:

//首先要引入jquery的js包
jQuery(document).ready(function(){
$.ajax({

type : "get", //jquey是不支持post方式跨域的
async:false,
url : "http://api.taobao.com/apitools/ajax_props.do", //跨域請求的URL
dataType : "jsonp",
//傳遞給請求處理程序,用以獲得jsonp回調函數名的參數名(默認為:callback)
jsonp: "jsoncallback",
//自定義的jsonp回調函數名稱,默認為jQuery自動生成的隨機函數名
jsonpCallback:"success_jsonpCallback",
//成功獲取跨域伺服器上的json數據後,會動態執行這個callback函數
success : function(json){
alert(json);
}
});
});

伺服器端示例代碼,以java為例:

伺服器端代碼,是重點,開始以為,只要客戶端通過jsonp就可以直接跨域訪問,其實不然,需要伺服器端的支持才行。

復制代碼代碼如下:

public void jsonpTest() throws IOException{

HttpServletRequest request = ServletActionContext.getRequest();
HttpServletResponse response = ServletActionContext.getResponse();
//根據html指定的jsonp回調函數的參數名,獲取回調函數的名稱
//callbackName的值其實就是:success_jsonpCallback
String callbackName = (String)request.getAttribute("jsoncallback");
//簡單模擬一個json字元串,實際可使用google的gson進行轉換,次數通過字元串拼接
//{"name":"張三","age":28}
//\是對"號進行轉義
String jsonStr = "{\"name\":\"張三\",\"age\":28}";
//最終返回的數據為:success_jsonpCallback({"name":"張三","age":28})
String renderStr = callbackName+"("+jsonStr+")";
response.setContentType("text/plain;charset=UTF-8");
response.getWriter().write(renderStr);
}

閱讀全文

與小程序如何跨域獲取動態數據相關的資料

熱點內容
去哪裡學習傳奇技術 瀏覽:959
諾安基金交易密碼是什麼 瀏覽:703
你為什麼沒有程序 瀏覽:448
波後如何代理加盟 瀏覽:570
福州哪裡有銀元交易店 瀏覽:923
汽車違法信息收到多久才查到 瀏覽:520
簡易程序給被告送達什麼 瀏覽:851
高職信息專業有哪些學校 瀏覽:472
極東全國有多少代理 瀏覽:893
什麼時候沖減交易性金融資產成本 瀏覽:913
下一步應該走什麼程序 瀏覽:863
跳蚤市場用另一種意思怎麼說 瀏覽:255
快手小程序怎麼跳轉 瀏覽:191
汽車安檢燈的數據多少 瀏覽:360
黎塘煙絲市場在哪裡 瀏覽:935
交易分期轉賬是什麼意思 瀏覽:657
寶齊萊製表技術怎麼樣 瀏覽:698
商場假客流數據有什麼用 瀏覽:166
新北人才市場怎麼樣 瀏覽:149
賣房在哪裡交易好 瀏覽:315