gpt4 book ai didi

jquery - 为什么尝试使用 $.ajax 获取 JSON 时出现 "SyntaxError: invalid label"

转载 作者:行者123 更新时间:2023-12-01 07:16:40 26 4
gpt4 key购买 nike

我正在尝试使用Viralheat's API使用 jQuery 进行情感分析。

<强>1。当我在浏览器的地址栏中输入以下内容时,就可以了:

https://app.viralheat.com/social/api/sentiment?api_key=1234&text=Schindler%27s%20List

它显示:

{"status":403,"error":"API Key not registered"}

<强>2。使用这些代码行,网页显示错误,我认为它遇到了同源策略:

    $.ajax({
type: 'get',
url: "https://app.viralheat.com/social/api/sentiment?api_key=1234&text=Schindler's List",
success: function(data){alert(data);},
error: function(){alert("error");}
});

<强>3。当我使用 firebug 添加 callback=? 到 url 和 dataType: 'json', 时,我可以看到与场景 1{"status 相同的结果":403,"error":"API Key not Registration"},但是网页仍然显示错误,并且出现错误:SyntaxError: invalid label

    $.ajax({
type: 'get',
dataType: 'json',
url: "https://app.viralheat.com/social/api/sentiment?api_key=1234&text=Schindler's List&callback=?",
success: function(data){alert(data);},
error: function(){alert("error");}
});

我该如何解决这个问题?

最佳答案

仅将 callback=whatever 添加到 JSON API 请求不会神奇地将结果转换为 JSONP,除非服务实际上支持这样的 JSONP 选项。

您使用的 Viralheat API 似乎不支持 JSONP。 The documentation没有提及任何类型的 JSONP 选项。它提到的唯一选项是 API_KEYTEXT PARAMETERS。

正如您所发现的,添加 callback=anything 不会将输出格式从 JSON 更改为 JSONP。如果您尝试your API call with a callback=foobar parameter added ,它仍然生成普通的 JSON:

{
"status": 403,
"error": "API Key not registered"
}

如果此服务不支持 JSONP 或 CORS ,您将必须使用服务器上的代码来访问服务,而不是客户端浏览器中的 JavaScript。

关于jquery - 为什么尝试使用 $.ajax 获取 JSON 时出现 "SyntaxError: invalid label",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18168566/

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