gpt4 book ai didi

javascript - 使用 Javascript 服务器端编码从经典 ASP 返回 JSONP

转载 作者:行者123 更新时间:2023-11-30 18:30:56 24 4
gpt4 key购买 nike

我正在从 jquery 调用一个经典的 .asp 页面以返回一个列表(使用 JSONP)。我想使用 JSONP,因为当通过谷歌翻译查看我的网站时,同源策略会导致问题。我发现的所有解决方案的问题是它们假定 asp 页面使用 VBscript 作为服务器端语言。我在 asp 中使用 javascript 作为服务器端语言来连接到数据库并返回结果。

我尝试了几种不同的方法,但只返回了 500 个服务器错误。这是我的 jquery 调用:

$.ajax({
dataType: 'jsonp',
url: 'website/page.asp',
success: function () {
alert(data);
},
});

这是我的 page.asp:

<%@ language="Javascript" %>

<script language="javascript" runat="server" src='json2.js'></script>
<script language="javascript" runat="server">

var jsonValue = eval('('hello world')');
Response.Write(jsonValue);

</script>

我想要做的就是创建一个简单的 hello world JSONP 调用,这样我就可以开始修改它以包含来 self 对数据库执行的查询的数据。有人有这个的简单版本吗?这可能吗?

最佳答案

你的例子没有意义。首先,它有无效的语法(“hello world”是一个字符串,但没有被引用)。其次,您想在您的 asp 代码中对 JSON 进行编码,但使用 eval 将是一种(错误的)解码 JSON 的方法。这是我认为您可以做的,使用 Crockford 的 json2.js 来编码您的对象,如下所示:

var sourceObj = { "testkey" : "test value", "otherkey" : 5 };
var jsonstr = JSON.stringify(sourceObj);
Response.Write("yourjsonpCallbackName (" + jsonstr + ");");

关于javascript - 使用 Javascript 服务器端编码从经典 ASP 返回 JSONP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9638467/

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