我可以检测到有效的JSONP返回吗?

时间:2013-05-31 18:10:45

标签: javascript ajax jquery

我想将数据发送/接收到未启用CORS的其他服务器上的Web服务。我必须使用JSONP来做到这一点。该服务需要身份验证,并且大部分时间用户都处于SSO环境中,并且SSO机制可以轻松地将它们传递给服务而不会出现问题。

当不在SSO环境中时,用户被重定向(301)到登录页面,这当然返回无效的javascript,因为该文件将以<!Doctype...开头

有没有办法查看返回的数据是否可操作?我确切知道用​​户可以成功访问服务的前15个字符应该是什么。我想查看退货,然后执行以下操作:

if(dataIsValid){ //continue normally, build page with returned data }

else{ //redirect to non-SSO login page }

或类似工作流程的任何内容。

1 个答案:

答案 0 :(得分:0)

我认为你已经使用了jQuery,因为你已经添加了相关标签。

var dataIsValid = true;
var data = {};
try {
   data= $.parseJSON(data);
} catch (exc){
   dataIsValid = false;
}
//...