当我从jsonp请求(客户端代码)中查看查询字符串时,有两个对象,一个“回调”字符串,您需要在响应中使用(因此客户端代码指向成功处理程序),另一个与“_”的关键…这是什么下划线?在任何文件中,我都没有找到任何这方面的内容,它似乎是一些类型的.
我虽然可以用它直接指向错误处理程序(在它的on,结合回调,或替换回调字符串中的下划线之后的数字),但它似乎不是.
url = 'http://localhost:11767/Handlers/MyHandler.ashx';
…
$.ajax({ url: url,dataType: "jsonp",error: function (jqXHR,textStatus,errorThrown) { //... },success : function(d) { //... } });
要么
$.getJSON(url + "?callback=?",function(d) { }).success(function(d) { //... }).error(function(jqXHR,errorThrown) { //... }).complete(function(d) { //... });
如果这有助于任何人读取这些信息,那么请注意:由于这是一个jsonp请求,所以只有当客户端出现异常时才会发生错误.有一个超时或响应格式的问题(即不使用回调),为了克服这个问题,我总是记录和吞下处理程序中的异常,但是给出一个标准的响应对象(所有的响应都由它构成)它具有异常的state属性和message属性.
解决方法
您所指的号码是请求的日期时间戳.获取号码并使用浏览器的JavaScript控制台并键入:alert(new Date(/ * insert number here * /))
你会得到一个日期/时间的警报.
编辑:
以下是有关ajax请求的jQuery.ajax文档的摘录:
cache
Default: true,false for dataType ‘script’ and ‘jsonp’
If set to false,it will force requested pages not to be cached by the browser.
Setting cache to false also appends a query string parameter,"_=[TIMESTAMP]"
,to the URL.