gpt4 book ai didi

javascript - getJSON 只响应明文,否则不起作用?

转载 作者:行者123 更新时间:2023-11-28 10:09:06 26 4
gpt4 key购买 nike

我正在使用 $getJSON 从链接中提取 JSON 字符串(例如/login?user=foo&pass=bar)。当我将此链接直接插入浏览器时,我会收到“文件下载”提示(“这是:application/json”)。 getJSON 不适用于该链接。

但是!当我在记事本中的“文件下载”提示中打开文件并将该文本作为纯文本(.txt 文件)托管到我的服务器上并在该链接(即/jsondata.txt)上调用 getJSON 时,它工作得很好。 p>

请记住,我没有能力更改后端的任何内容。

知道这是怎么回事吗?基本上,当我以纯文本形式托管 JSON 文件时,我可以将其拉下来,但默认情况下不会返回它。

编辑这是我的代码...非常简单:

  $.getJSON("http://EXTERNALHOSTNAME.com/WEBSERVICE.svc/login?username="+document.frmLogin.email.value+"&password="+document.frmLogin.password.value+"", function(data) {

alert("it worked!");
});

如果我用指向 dropbox .txt 文件的链接替换该行,它就会起作用:

//$.getJSON("http://dl.dropbox.com/u/NUMBERS/login.txt", function(data) {

最佳答案

您无法从 javascript 调用其他域(原始域除外)。如果 EXTERNALHOSTNAME 支持 jsonp 响应,您可以通过在查询中添加 &callback=? 来解决问题。如果没有,您可以在服务器上放置一个脚本来路由该响应,以便它显示为源自您自己的域。除此之外,如果您可以从 EXTERNALHOSTNAME 提供页面(我对此表示怀疑),您可以从执行此 ajax 调用的域提供 iframe(这样就不会违反同源规则),并且然后将该数据走私到父框架。

关于javascript - getJSON 只响应明文,否则不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7744287/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com