Tag: jsonp

是否有任何javascript库来捕获鼠标/键盘事件并将它们发送到外部服务器?

我需要的是: 可以捕获所有键盘事件 可以捕获所有鼠标事件(点击,移动) 可以捕获页面滚动,可能会关注浏览器的差异 使用JSONP(或其他任何东西,但不仅需要在最新的浏览器中工作)将数据发送到外部服务器 非常小,最多xx kB我希望 我想找到一些至少有3个以上正确实现的东西。 如果他们可以帮助我,我也可以看看像Dojo或JQuery这样的js框架,但是我能够保持它足够小吗?

jQuery .ajax(),jsonp没有调用成功回调函数

我有一个facebook iframe应用程序,它向我的服务器发出跨域请求并以JSONP格式请求数据。 这是我的客户端代码: jQuery.ajax({ url: ‘***’, type: ‘post’, data: { method: ‘set_user_prizes’ }, dataType: ‘jsonp’, jsonp: false, jsonpCallbackString: ‘callback123’, success: function(data, textStatus, jqXHR){ console.log(‘success_function’); console.log(data); } }); 问题是我的成功回调方法没有被调用,我不知道为什么。 使用Firebug我可以看到我服务器的响应: callback123({“success”:true,”associated_prizes”:[{“prizes_id”:”6″},{“prizes_id”:”1″}]})

是否可以从HTTPS向HTTP发出JSONP请求?

我知道有一个几乎重复的问题,但答案根本不令人满意。 我需要使用在HTTP上运行的Openstreetmap服务进行地理编码。 我的网站通过HTTPS运行。 似乎不可能从https到http进行JSONP请求,浏览器(Chrome)抱怨不安全的内容。 有解决方案?

使用Ajax / jQuery从CouchDB读取连续提要

我想使用jQuery来监听来自CouchDB的持续更改 – 现在这可行: http://localhost:5984/testdb/_changes?feed=continuous 这意味着每次有db更新时我都会获得一个新的json行 – 但是如何使用jQuery从这个URL读取更新? 我尝试使用它,但它不起作用: $.ajax( { url : “http://localhost:5984/testdb/_changes?feed=continuous&callback=?”, dataType : ‘json’, success : function(data) { alert(data.results.length); } }); 编辑 :$ .ajax调用“success”函数并立即返回,它不会“轮询”更改..(下图中ajax列的时间轴列为16ms) 不,它不是一个跨域的ajax问题 – 我可以在fireBug中看到有一个具有正确数量的元素的响应 所以任何指导/建议都会受到赞赏 – 它不一定是jQuery – 普通的旧javscript也会这样做

JSONP使用JQuery从HTTPS协议获取JSON

我正在尝试获取从https安全站点发送的JSON, 客户端希望不使用任何服务器端语言(Javascript中的全部内容) 我已经读过,当使用Jquery的.ajax函数时,我必须使用JSONP从安全站点加载JSON。 我的第一个问题是将JSONP设置为什么格式? 现在我的代码看起来像这样: html =new Object(); html = $.ajax({ url: “https://my-secure.net”, async: false, dataType: ‘jsonp’ }).responseText; //alert(html); alert(“myObject is ” + html.toSource()); console.log(html); 但是,没有任何信息被警告,Firebug中也没有任何记录。 基本上我希望能够操纵JSON数据。 我在Firebug下的Response中看到了数据,但是出现了“无效标签”的错误。 我已经读过,为了解决这个问题,你将它包含在带有额外parantheses的eval函数中,但这不起作用。 http://b.lesseverything.com/2007/10/25/invalid-label-error-when-eval-json 我也收到一个错误,说我的$ .ajax请求是“未定义的”,但我可以看到响应中的数据。 我怀疑这与我如何抓取初始数据有关。 任何意见,将不胜感激。 谢谢!

jQuery JSONP没有调用回调

我在使用jsonp和jquery时遇到了一些问题。 这是我的代码 – var myCallback = function(data) { console.log(data); }; $.ajax({ url: my_url, type: ‘GET’, dataType: ‘jsonp’, jsonp: ‘callback’, jsonpCallback: ‘myCallback’ }); jQuery向my_url添加了类似?callback=myCallback&_=1340513330866 ,my_url返回的数据是myCallback(‘abcd’) – 尽管实际上它将返回一些HTML代码而不是abcd 。 问题:通过myCallback未在控制台中记录abcd 。 那么我做错了什么? 我的印象是返回的数据将在脚本标签内执行?

FireBug并监控JSONP跨域请求

这个问题特定于Firefox的Firebug插件。 实际function有效,但我失去了在Firebug中监视和调试它的能力。 我有一个使用JSON获取数据的网站。 在Firebug中,我能够监视JSON请求。 它会向我显示它们中的每一个,标题和返回的数据。 我需要更改我提交JSON请求的服务器。 为了使跨域JSON工作,我使用JSONP与回调=? 方法。 我得到了function。 但是,我现在无法在Firebug中监视和调试我的JSONP请求。 为了记录,这在Firefox 3.0.11和我使用jQuery与&callback =? 我的JSONP请求的参数。 如何在Firebug中显示JSONP请求?

发送前jsonp没有触发?

我正在开发一个项目,使用$ .ajax调用来自不同域的web服务,并将dataType设置为jsonp。 $.ajax({ type: “GET”, url: testService.asmx, async: true, contentType: “application/json; charset=utf-8”, dataType: “jsonp”, beforeSend: function (XMLHttpRequest) { alert(‘Before Send’); //Nothing happnes }, success: function (response) { alert(‘Success’); //this was fired }, complete: function (XMLHttpRequest, textStatus) { alert(‘After Send’); //this was fired } }); 问题是我有一个…加载动画,我想在处理Web服务请求时显示。 我尝试使用“beforeSend:”来显示加载动画,但似乎“beforeSend”没有被解雇。 当应用程序在同一个域上时(使用jsonp),动画工作正常,但当我将应用程序移动到另一个服务器时,一切正常,除了“beforeSend”没有被调用。 因此用户将无法看到加载动画。 这有什么解决方法吗?

自定义框,包含来自Google / Bing的自动填充function。 有没有办法读取收到的json文件?

我尝试使用搜索框构建网页。 我想从Bing获取自动完成选项(例如)。 可以通过以下方式从bing获取自动完成: http://api.bing.com/osjson.aspx?query=YOUR_QUERY 我用自动完成小部件编写了一些代码,要求将json作为jsonp,并且我成功地看到(在Fiddler中)json到达。 但是因为它只是作为一个json而不是以所需的格式到达,所以我得到了parseError。 (我在错误函数中看到它。未调用成功函数) 我的代码中的相关部分是: $( “#mySesearchBox” ).autocomplete({ source: function( request, response ) { $.ajax({ url: “http://api.bing.com/osjson.aspx?query=” + request.term, dataType: “jsonp”, … 有没有办法克服这个问题? 我想过运行一些会得到这样一个查询的服务器,会请求Bing的json,并会以所需的格式进行响应。 但是,我更喜欢更简单的解决方案。 任何建议?

Jquery jsonp响应错误 – 未调用回调

我试图从不同的域获取一些信息,域只允许jsonp调用 – 其他域被拒绝。 如何获取内容而不是执行? 因为我得到了错误的回应。 我不需要执行它,我只需要在我的脚本中。 在任何格式(响应是json但js不理解它)。 我无法影响该域名,因此无法改变该方面的内容。 这是我的代码: $.ajax({ url: url + ‘?callback=?’, crossDomain: true, type: “POST”, data: {key: key}, contentType: “application/json; charset=utf-8;”, async: false, dataType: ‘jsonp’, jsonp: ‘callback’, jsonpCallback: ‘jsonpCallback’, error: function(xhr, status, error) { console.log(status + ‘; ‘ + error); } }); window.jsonpCallback = function(response) { console.log(‘callback success’); };