Iron Ajax - 如何从响应函数访问响应?

2024-02-23

我有这个元素:

<template>
...
<iron-ajax 
   id="ajax" 
   url="..." 
   handle-as="json" 
   verbose=true 
   last-response={{ajaxResponse}} 
   loading="{{cargando}}"
   on-response="_handleResponse"> 
</iron-ajax>

<div id="resultado"></div>
</template>

<script>
    Polymer({
        ...

        _handleResponse: function(event){
            console.log("_handleResponse... ");
            // this.$.resultado.innerHTML = event.detail.innerHTML;
        }
    });
</script>

我在 Firebug 中看到的响应是:

<p>Hello word</p>

我想访问以下回复_handleResponse函数以便将其设置为innerHTML of the resultadodiv,但没有任何作用。

我努力了:

  • event.detail.innerHTML
  • event.detail.response
  • event.detail.xhr.response
  • event.detail.xhr.responseText
  • event.detail.request.xhr.response(这条路线不存在,怎么解决Polymer Iron Ajax - 如何在错误事件后访问请求的响应? https://stackoverflow.com/questions/35220177/polymer-iron-ajax-how-to-access-response-from-request-after-error-event?)

如果我在响应函数中调试并观察 e.detail.response 值:

在网络选项卡中,我可以看到响应(简单的“你好”):


响应数据实际上返回在event.detail.response of the <iron-ajax>.response https://elements.polymer-project.org/elements/iron-ajax#event-response事件。你的response场是null因为你配置错误<iron-ajax>.handleAs https://elements.polymer-project.org/elements/iron-ajax#property-handleAs。当您将其设置为json, the Accept-Type标头设置为application/json任何响应都会被解析为JSON.parse() https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse。如果你的服务器忽略Accept-Type并发送它想要的任何内容,<iron-request>将尝试将响应解析为 JSON 并失败,从而导致null响应体 https://github.com/PolymerElements/iron-ajax/blob/c6c5c80/iron-request.html#L341根据spec https://xhr.spec.whatwg.org/#response-body。注意hello and <p>Hello</p>不是有效的 JSON 字符串。

如果要接收明文数据,请设置<iron-ajax>.handleAs to text(默认是json).

Demo of <iron-ajax handle-as="text"> http://codepen.io/tony19/pen/worxQb?editors=1010

Demo of <iron-ajax handle-as="json"> http://codepen.io/tony19/pen/bBoWVr?editors=1010


  • event.detail.request.xhr.response(这条路线不存在,怎么解决Polymer Iron Ajax - 如何在错误事件后访问请求的响应? https://stackoverflow.com/questions/35220177/polymer-iron-ajax-how-to-access-response-from-request-after-error-event?)

The 您链接的问题 https://stackoverflow.com/questions/35220177/polymer-iron-ajax-how-to-access-response-from-request-after-error-event询问关于<iron-ajax>.error事件,其事件详细信息与<iron-ajax>.response event.

When <iron-ajax>收到服务器响应后,激发response event https://github.com/PolymerElements/iron-ajax/blob/6422490/iron-ajax.html#L479与相应的<iron-request> https://elements.polymer-project.org/elements/iron-ajax?active=iron-request作为活动细节。

如果请求因任何原因失败,<iron-ajax> 激发error event https://github.com/PolymerElements/iron-ajax/blob/6422490/iron-ajax.html#L506-L509object(包含iron-request通过request属性,以及潜在的错误error)作为事件详细信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Iron Ajax - 如何从响应函数访问响应? 的相关文章

随机推荐

  • 使 optgroup 标签在下拉列表中选择

    我计划为主要车型 瑞典汽车 提供一个简短的描述页面 我还想表明沃尔沃和萨博在下拉列表中位于瑞典汽车下方 然后 当我单击沃尔沃时 它应该导航到沃尔沃描述页面 如何显示最初选择的 optgroup 标签 谢谢
  • Windows:如何使用带路径的主机文件?

    这有效 127 0 0 1 www somesite com 但不是这个 127 0 0 1 somepath www www mysite com 我究竟做错了什么 是否可以绘制这样的完整路径 如果没有 完成我想做的事情的最简单方法是什么
  • 为 Android 部署 Phonegap / Cordova 应用程序?

    我正在 Android 上测试 Phonegap Cordova 3 0 应用程序 从 2 x 版本开始 Cordova 严重依赖命令行终端 我已经完成了所有设置 可以构建应用程序了 但有两件事困扰着我 首先 一个Android项目有两个w
  • 敲除剑道问题通过计算的可观察值进行绑定

    我尝试使用knockout kendo js 在knockout forEach 模板中声明kendo dropdownlist 控件 以便当新项目添加到knockout 可观察数组时 新的kendo dropdownlist 会在UI 中
  • C++ 中的函数与变量声明

    这段代码的工作原理 std ifstream f mapFilename c str std string s std string std istreambuf iterator
  • sf 对象的大小图例不会显示正确的符号

    有谁知道为什么传说size审美的BIR74不会显示点大小而是矩形 如果答案是肯定的 我该如何解决这个问题 可重现的例子 library sf devtools install github tidyverse ggplot2 library
  • 为什么这个不能是本地的?

    这是我正在运行的设置的虚拟变体 Launcher函数好像没有看到GetLevel 至少可以看到第一个印刷品 但看不到第二个印刷品 所以该函数永远不会启动 这是因为代码出现在代码中启动它的位置之后 而在启动器执行时它还不存在吗 当我删除本地标
  • FluentValidation 检查子集合中的重复实体

    我有一个MainEntity类 它有一个集合SubEntity 目前的验证情况如下 public class MainEntityValidator AbstractValidator
  • git-tf 无法找到所需的 JAR

    我正在尝试在我的 Windows 工作站上设置 git tf 桥 当我尝试执行其中一个命令时 它总是显示消息 无法找到所需的 JAR C my path to git tf lib com microsoft gittf client cl
  • 如何从 Gemfile.lock 文件安装 gem?

    我正在尝试运行一个从 Github 上取下的应用程序 我跑了bundle install从以下位置安装所需的 gemGemfile 然而 当运行应用程序时 一条错误消息告诉我安装的 gems 版本错误 关于检查Gemfile lock我注意
  • 使用 Objective C 读取发布到设备控制台的日志消息

    我的 iOS 应用程序如何从设备控制台日志中读取消息 我想以编程方式读取这些日志条目 例如读取文件 选择一些日志条目 然后通过电子邮件将其发送给支持人员 我知道有一款 iPhone 应用程序可以让您查看日志 它的名字是控制台 但是 我无法弄
  • 禁用 Zsh 中远程分支的自动完成功能?

    这与禁用 Git Bash 中远程分支的自动完成功能 https stackoverflow com questions 6623649 disable auto completion of remote branches in git b
  • MD5产生碰撞之前有多少个随机元素?

    Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的答案或互动 我在 Amazon S3 上有一个图像库 对于每个图像 我在服务器上对源 URL 进行 md5
  • Xcode - 我更换了硬盘,现在项目无法构建

    我很快更换了故障硬盘 我检查的所有文件似乎都正常 但是 我的 Xcode 项目无法编译 我收到这条消息 error PCH was compiled with module cache path Volumes MacintoshHD2 U
  • Lombok - 如何创建自定义设置器并应用于 java 中的不同成员

    我想了解如何在 Lombok 中创建自定义设置器并将该设置器应用于特定成员 我有一个有 100 名成员的班级 其中 50 名成员有一个自定义设置器 在设置值之前检查 X 内容 另外 50 名成员有一个自定义设置器 在设置值之前检查 Y 内容
  • Android:如何配置“tinymix”以使用“tinycap”录制系统音频

    在 Android 中 目前无法使用 Android SDK 录制系统音频 因此 我尝试了一下 TinyALSA 自 Android 4 起 希望可以重新路由音频输出 以便可以录制它 当我在设备上调用 tinymix 时 我得到以下配置 c
  • 如何检测非 IEEE-754 浮点,以及如何使用它们?

    我正在为基本类型编写类 因此代码在多个平台和编译器上在逻辑上是相同的 例如int least16 t for int 为了娱乐 我还是个学生 我读到了这个 float 匹配 IEEE 754 binary32 格式如果支持的话 https
  • 如何使用 Laravel 获取服务器 IP

    使用 Laravel 我可以获取客户端 IPrequest gt ip 有没有Laravel 内置方式获取服务器IP 或者这是 不可能 的事情 与SERVER ADDR可靠性 您可以使用请求对象 request gt server SERV
  • Java调度执行器的准确性

    我在使用 Java 调度执行器时遇到了一个奇怪的情况 我想知道我遇到的情况是否正常 我需要安排以 5 秒的预定义速率执行的任务 预计这些任务的执行时间有时会超过 5 秒 但当运行它们的时间低于 5 秒时 备份的任务列表应快速连续运行以赶上
  • Iron Ajax - 如何从响应函数访问响应?

    我有这个元素