QuickBase的jQuery/Ajax调用的益智游戏
我也困惑过这个QuickBase的jQuery/Ajax的问题了两天更好的一部分。考虑内部运行$(函数()这个jQuery代码...:QuickBase的jQuery/Ajax调用的益智游戏
<script type="text/javascript">
$(function() {
$.ajax({
type: "GET",
url: "https://www.quickbase.com/db/<mydbid>", // <- returns error
//url: "http://pfs.fedcap.com/testdata.xml", // <- returns xml
data: {
act:"API_DoQuery",
query:"{7.EX.235445}",
apptoken:"<myapptoken>"
},
dataType: "xml",
error: function(xhr,status) {
alert("error");
},
success: function(xml) {
alert("OK");
}
});
});
</script>
如前所述,指着QuickBase的URL返回一个错误,而是指向XML文件的URL返回预期的XML,但这里的。踢球者:xml文件(testdata.xml)是通过直接指向我的浏览器到指定的URL创建:https://www.quickbase.com/db/<mydbid> A = API_DoQuery &查询= {} 7.EX.235445 APPTOKEN & = < myapptoken>并保存结果? testdata.xml。在我看来,jquery ajax调用应该产生与testdata.xml文件相同的结果,但它并不是。
Firebug xml窗格显示t帽子时对QuickBase现场执行的调用返回“XML解析错误:语法错误地点:MOZ-nullprincipal:{3e0d38f1-0e36-4adb-965e-d0e7d68ab0cb} 1号线,1列:刷新页面以获取来源:https://www.quickbase.com/db ...“
我忽略了什么?有什么想法吗?
虽然可以编写自己的jQuery实现自己的API,你就要去使用他们自己的JavaScript SDK好得多。 https://github.com/QuickbaseAdmirer/Quickbase-JavaScript-SDK
您缺少的重要组成部分,是认证调用来获取“票”。提供应用程序令牌不足以执行DoQuery调用。您必须进行身份验证,然后使用发回的票证来执行更多API调用。对于url请求,票据可以很容易地附加到&ticket=randomcharacters
。对于XML请求,只需将<ticket>randomcharacters</ticket>
添加到您的XML请求中即可。
https://github.com/QuickbaseAdmirer/Quickbase-JavaScript-SDK对如何使用身份验证调用的更多信息。
我无法正确显示/隐藏处理加载器图像使用此QuickBase JS SDK..any想法在这里为我? –
嗯,我不解的是,这可能是由于浏览器的不允许所谓跨域(或跨网站)ajax调用。这对JSONP来说并不是问题,但QuickBase显然不会响应带有JSON的调用,而只会响应XML。有谁知道解决方法? – user1390191