gpt4 book ai didi

javascript - 正确的 JSONP 响应

转载 作者:数据小太阳 更新时间:2023-10-29 04:52:47 25 4
gpt4 key购买 nike

我在本地尝试让 JSONP 给我一个正确的响应并将其传递到我的回调函数 jsonp_callback。使用代码来自:How do I set up JSONP?

header('content-type: application/json; charset=utf-8');
$data = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echo $_GET['jsonpCallback'] . '('.json_encode($data).')';

$.ajax({
url: 'jsonp-response.php',
dataType:'jsonp',
jsonp: 'jsonp_callback',
success: function (r){
console.log(r);
}
});


function jsonp_callback (r){
console.log('jsonp_callback:',r);
}

到目前为止,我收到的响应如下所示:

jQuery1102035954900085926056_1381230228656({"a":1,"b":2,"c":3,"d":4,"e":5})

查看来自 Testing a static jsonp response 的第一个答案我认为我做的是正确的,但我不确定为什么 jQuery 给我一个唯一的字符串。

如何让我的回复看起来像这样?

jsonp_callback({"a":1,"b":2,"c":3,"d":4,"e":5})

最佳答案

这是我的代码片段..如果它解决了您的问题..

客户端代码:

设置 jsonpCallBack : 'photos' 和 dataType:'jsonp'

 $('document').ready(function() {
var pm_url = 'http://localhost:8080/diztal/rest/login/test_cor?sessionKey=4324234';
$.ajax({
crossDomain: true,
url: pm_url,
type: 'GET',
dataType: 'jsonp',
jsonpCallback: 'photos'
});
});
function photos (data) {
alert(data);
$("#twitter_followers").html(data.responseCode);
};

服务器端代码(使用 Rest Easy)

@Path("/test_cor")
@GET
@Produces(MediaType.TEXT_PLAIN)
public String testCOR(@QueryParam("sessionKey") String sessionKey, @Context HttpServletRequest httpRequest) {
ResponseJSON<LoginResponse> resp = new ResponseJSON<LoginResponse>();
resp.setResponseCode(sessionKey);
resp.setResponseText("Wrong Passcode");
resp.setResponseTypeClass("Login");
Gson gson = new Gson();
return "photos("+gson.toJson(resp)+")"; // CHECK_THIS_LINE
}

关于javascript - 正确的 JSONP 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19247448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com