问题标签 [ajax]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
4540 浏览

asp.net - 没有完整回发的 ASP.NET JavaScript 回调?

我即将在我公司的应用程序中启动一个相当重的 Ajax 功能。我需要做的是每隔几分钟用户在页面上进行一次 Ajax 回调。

  • 我不需要在回调之前、之后或期间进行任何 DOM 更新。
  • 我不需要页面上的任何信息,只需要一个站点cookie,无论如何都应该随请求一起发送,以及一个ID值。

我很想知道的是,是否有任何干净简单的方法可以使 JavaScript Ajax 回调到 ASP.NET 页面,而无需回发页面上的其余信息。如果可能的话,我不想这样做。

我真的只想能够在页面上调用一个方法,仅此而已。

此外,我仅限于 ASP.NET 2.0,因此我不能使用任何新的 3.5 框架 ASP AJAX 功能,尽管我可以使用 2.0 框架的 ASP AJAX 扩展。

更新
我决定接受DanP的回答,因为它似乎正是我正在寻找的。我们的网站已经在某些事情上使用了 jQuery,所以我可能会使用 jQuery 来发出请求,因为根据我的经验,它的性能似乎比 ASP 的 AJAX 框架要好得多。

您认为将数据传输到 IHttpHandler 的最佳方法是什么?我应该将变量添加到查询字符串还是 POST 我需要发送的数据?

我认为我唯一需要发送的是单个 ID,但我无法确定发送 ID 并让 IHttpHandler 处理它的最佳方法。我想提出一个解决方案,以防止具有基本计算机技能的人意外或故意直接访问页面或重复请求。这可能吗?

0 投票
9 回答
79169 浏览

ajax - HttpOnly cookie 如何处理 AJAX 请求?

如果在基于 cookie 的访问限制的站点上使用 AJAX,则 JavaScript 需要访问 cookie。HttpOnly cookie 可以在 AJAX 网站上工作吗?

编辑:如果指定了 HttpOnly,Microsoft 通过禁止 JavaScript 访问 cookie 创建了一种防止 XSS 攻击的方法。FireFox 后来采用了这个。所以我的问题是:如果您在 StackOverflow 之类的网站上使用 AJAX,是否可以选择 Http-Only cookie?

编辑 2:问题 2。如果 HttpOnly 的目的是阻止 JavaScript 访问 cookie,并且您仍然可以通过 JavaScript 通过 XmlHttpRequest 对象检索 cookie,那么 HttpOnly 的意义何在?

编辑3:这是维基百科的引述:

当浏览器接收到这样一个 cookie 时,它​​应该像往常一样在以下 HTTP 交换中使用它,但不让它对客户端脚本可见。 [32] 该HttpOnly标志不是任何标准的一部分,也不是在所有浏览器中都实现。请注意,目前无法阻止通过 XMLHTTPRequest 读取或写入会话 cookie。[33]。

我知道document.cookie当您使用 HttpOnly 时会被阻止。但似乎您仍然可以读取 XMLHttpRequest 对象中的 cookie 值,从而允许 XSS。HttpOnly 是如何让你变得更安全的呢?通过使cookie基本上只读?

在您的示例中,我无法写入document.cookie您的 cookie,但我仍然可以窃取您的 cookie 并使用 XMLHttpRequest 对象将其发布到我的域。

编辑 4:抱歉,我的意思是您可以将 XMLHttpRequest 发送到 StackOverflow 域,然后将 getAllResponseHeaders() 的结果保存到字符串,正则表达式输出 cookie,然后将其发布到外部域。似乎维基百科和黑客在这一点上同意我的观点,但我希望接受再教育......

最终编辑:啊,显然两个站点都是错误的,这实际上是FireFox 中的一个错误。IE6 & 7 实际上是目前唯一完全支持 HttpOnly 的浏览器。

重申我学到的一切:

  • HttpOnly 限制对 IE7 & 和 FireFox 中的 document.cookie 的所有访问(不确定其他浏览器)
  • HttpOnly 从 IE7 中 XMLHttpObject.getAllResponseHeaders() 的响应标头中删除 cookie 信息。
  • XMLHttpObjects 只能提交到它们起源的域,因此不会跨域发布 cookie。

编辑:此信息可能不再是最新的。

0 投票
3 回答
6633 浏览

asp.net - 使用 jQuery.ajax() 时如何处理错误?

使用jQueryajax 方法提交表单数据时,处理错误的最佳方法是什么?这是一个呼叫可能看起来像的示例:

请求可能由于多种原因而失败,例如重复的用户名、重复的电子邮件地址等,并且 ashx 会在发生这种情况时抛出异常。

我的问题似乎是通过抛出异常 ashx 导致statusTextanderrorThrownundefined

我可以找到XMLHttpRequest.responseText包含构成标准 .net 错误页面的 HTML 的内容。

我在 responseText 中找到页面标题并使用标题来确定引发了哪个错误。虽然我怀疑当我启用自定义错误处理页面时这会崩溃。

我应该在 ashx 中抛出错误,还是应该返回状态代码作为调用返回的数据的一部分userCreation.ashx,然后使用它来决定采取什么行动?
你如何处理这些情况?

0 投票
6 回答
36458 浏览

java - 如何使此代码使用 jQuery/Ajax 提交 UTF-8 表单文本区域?

我在使用 Ajax 提交包含 UTF-8 字符串的表单时遇到问题。我正在开发一个在Tomcat服务器中运行的Struts Web 应用程序。这是我为使用 UTF-8 而设置的环境:

  • 我已将属性添加到 Tomcat文件URIEncoding="UTF-8" useBodyEncodingForURI="true"Connector标签中。conf/server.xml

  • 我有一个utf-8_general_ci数据库

  • 我正在使用下一个过滤器来确保我的请求和响应以 UTF-8 编码

    /li>
  • 我在 WEB-INF/web.xml 中使用这个过滤器

  • 我正在为我的 JSON 响应使用下一个代码:

    /li>

一切似乎都正常(来自数据库的内容显示正确,我可以提交以 UTF-8 格式存储在数据库中的表单)。问题是我无法使用 Ajax 提交表单。我使用 jQuery,我认为问题是 Ajax 请求中缺少 contentType 字段。但是我错了。我有一个非常简单的表单来提交包含 id 和 body 的评论。body 字段可以是不同的语言,例如西班牙语、德语或其他语言。

如果我提交包含正文文本区域的表单contraseñaFirebug 会显示:

请求标头

  • 主机 本地主机:8080
  • 接受字符集ISO-8859-1, utf-8;q=0.7;*q=0.7
  • 内容类型应用程序/x-www-form-urlencoded;字符集 UTF-8

如果我在 Firebug 中使用参数执行复制位置,则编码似乎已经错误:

这是我的 jQuery 代码:

使用 jQuery 提交表单会导致服务器端出现下一个错误(注意我使用的是Hibernate)。

0 投票
8 回答
22036 浏览

javascript - 使用 Ajax 时如何保持浏览器历史同步?

我正在使用 ASP.NET Ajax 编写一个简单的相册应用程序。
该应用程序使用异步 Ajax 调用来预加载相册中的下一张照片,而无需更改浏览器中的 URL。

问题是当用户点击浏览器中的后退按钮时,应用程序不会返回到上一张照片,而是导航到应用程序的主页。

有没有办法欺骗浏览器将每个 Ajax 调用添加到浏览历史记录中?

0 投票
1 回答
559 浏览

jquery - 为什么在中止 jQuery 队列管道时收到 aq[num] 错误?

在创建和执行 ajax 请求队列时$.manageAjax,我调用ajaxManager.abort();, 以因错误而中止整个队列,此时我收到一条错误消息:q[num] has no properties (jquery.ajaxmanager.js line 75)

这是调用代码:

队列中有 4 个请求,在第一个请求成功时调用它,如果满足某些条件,则需要中止队列。

有任何想法吗?

0 投票
6 回答
95340 浏览

javascript - 如何从 $.getJSON 函数返回变量

我想返回StudentId使用范围之外的其他地方$.getJSON()

我想这与范围界定有关,但它似乎与 c# 的工作方式不同

0 投票
3 回答
453 浏览

ruby-on-rails - 使用 observe_field 传递特殊字符的问题

我正在做一个 Rails 项目。使用标签 observe_field,我将输入到文本区域的文本,在控件中处理它,并在 div 中显示结果(非常类似于堆栈溢出中的预览)。在我输入某些特殊字符之前,一切正常。

  1. ? => 导致在 params 对象中找不到变量
  2. (磅) => 导致无效的真实性错误
  3. % => 停止更新 div
  4. & => & 之后的每一件事都不再传递到服务器上的变量中。

有没有办法解决这个问题?

--- 代码示例 ---

这是视图。(“postbody”是一个文本区域)

这是被调用的控制器

这是创建的javascript:

0 投票
12 回答
3457 浏览

asp.net - 最佳 AJAX 框架

在 Asp.Net Web 表单中,提供正确 UI(如 Ajax)的最佳选择是什么?到目前为止,除了 Ajax Control Toolkit 之外,我一直在使用 MS 提供的内置 Ajax 支持,但有没有更好和/或更简单的东西?

0 投票
5 回答
8388 浏览

javascript - 脚本 SVG

我正在考虑开发一个类似于 stackoverflow 的网站,但答案也可能包括图纸(在这种情况下是示意图)。我想在答案表格中有一个区域,他们可以在不需要特殊插件等的情况下制作这个示意图。

  1. 我们是否已经到了 SVG 已经或应该很快(1-2 年)达到临界质量的地步,以便设计一个以脚本运行 SVG 作为主要功能的网站是合理的(即,需要 Firefox 或其他 SVG/AJAX 兼容的浏览器)?
  2. 学习跨平台 SVG 脚本(可能在 javascript 中)有哪些好的资源?

——亚当·戴维斯