2012-01-06 50 views
0

我正在做一些jsonp请求。我知道,如果你把callback =?jQuery会做出一个很好的jsonp回调函数名称?在URL上。但是,我以非标准方式提出请求。为jsonp生成回调名称

所以我想知道是否有人有一个很好的函数来生成一个函数的名称来包装jsonp响应?

回答

1

您可以通过简单地保持一个全球性的整数生成自己的名字,增加它,并把它添加到标准的名称,如“jsonPCallback”

var jpSuffix=0; 

function getNextCallbackName() 
{ 
    return "jsonPCallback" + jpSuffix++; 
} 

但更可能的是,如果你是一个特定的JsonP调用并始终执行相同的函数,只需使用一个名称创建该函数,如使用一个参数的“myJsonPCallback”,然后在URL中指定“?callback = myJsonPCallback”。服务器应返回代码,然后调用myJsonPCallback与JSON数据对象作为其参数。