来自 XMLHttpRequest 的空 responseText

Empty responseText from XMLHttpRequest(来自 XMLHttpRequest 的空 responseText)
本文介绍了来自 XMLHttpRequest 的空 responseText的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我写了一个 XMLHttpRequest,它运行良好但返回一个空的 responseText.

I have written an XMLHttpRequest which runs fine but returns an empty responseText.

javascript如下:

The javascript is as follows:

  var anUrl = "http://api.xxx.com/rates/csv/rates.txt";
  var myRequest = new XMLHttpRequest();

  callAjax(anUrl);

  function callAjax(url) {
     myRequest.open("GET", url, true);
     myRequest.onreadystatechange = responseAjax;
                 myRequest.setRequestHeader("Cache-Control", "no-cache");
     myRequest.send(null);
  }

  function responseAjax() {
     if(myRequest.readyState == 4) {
        if(myRequest.status == 200) {
            result = myRequest.responseText;
            alert(result);
            alert("we made it");
        } else {
            alert( " An error has occurred: " + myRequest.statusText);
        }
     }
  }

代码运行良好.我可以走过去,我得到了 readyState == 4 和一个状态 == 200 但 responseText 总是空白.

The code runs fine. I can walk through and I get the readyState == 4 and a status == 200 but the responseText is always blank.

我收到错误调度的日志错误(在 Safari 调试中):getProperties,我似乎无法找到参考.

I am getting a log error (in Safari debug) of Error dispatching: getProperties which I cannot seem to find reference to.

我已经在本地和远程服务器上的 Safari 和 Firefox 中运行了代码.

I have run the code in Safari and Firefox both locally and on a remote server.

将 URL 放入浏览器时将返回字符串并给出状态码 200.

The URL when put into a browser will return the string and give a status code of 200.

我在一个运行良好的 Mac Widget 中为相同的 URL 编写了类似的代码,但在浏览器中的相同代码永远不会返回结果.

I wrote similar code to the same URL in a Mac Widget which runs fine, but the same code in a browser never returns a result.

推荐答案

http://api.xxx.com/ 是否属于您的域?如果没有,您将被同源政策阻止.

Is http://api.xxx.com/ part of your domain? If not, you are being blocked by the same origin policy.

您可能需要查看以下 Stack Overflow 帖子,了解一些可能的解决方法:

You may want to check out the following Stack Overflow post for a few possible workarounds:

  • 规避同源策略的方法

这篇关于来自 XMLHttpRequest 的空 responseText的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Update another component when Formik form changes(当Formik表单更改时更新另一个组件)
Formik validation isSubmitting / isValidating not getting set to true(Formik验证正在提交/isValiating未设置为True)
React Validation Max Range Using Formik(使用Formik的Reaction验证最大范围)
Validation using Yup to check string or number length(使用YUP检查字符串或数字长度的验证)
Updating initialValues prop on Formik Form does not update input value(更新Formik表单上的初始值属性不会更新输入值)
password validation with yup and formik(使用YUP和Formick进行密码验证)