1

当我使用 JavaScript 远程处理并在我的 Force.com 站点上打开 URLReWriter 时出现错误。在关闭 URL 重写器的情况下使用 JavaScript 远程处理时不会发生该错误。

错误如下

解析 json 响应时出现异常错误:“意外的令牌 <”。登录?

我很困惑为什么会发生这种情况。如果我没有在我的 URL 重写器(或 visualforce 页面)中登录的检查,为什么会发生这种情况?

有没有人遇到过类似的事情?我注意到以下https://salesforce.stackexchange.com/questions/4112/possible-oauth-remote-action-bug但在我的情况下,我没有在我的网站上对我创建的测试页面使用身份验证,我是想知道为什么它提到“登录”。

URLRewriters 和 JavaScript Remoting 目前是否可能不能一起工作?

提前感谢您对此的任何帮助。

4

2 回答 2

1
  1. 您可以尝试在服务器端调试它吗?将“your_site_name Guest User”添加到调试日志并尝试该操作。如果幸运的话,您会看到出现问题(在远程操作中?在重写器中?),我怀疑这个未捕获的问题会导致重定向到维护页面(将是 HTML,而不是 JSON)......
  2. 如果没有 - 使用 Firebug 或类似工具详细检查请求和响应?或者event.status
  3. 它可能与权限有关吗?http://www.salesforce.com/us/developer/docs/pages/Content/pages_js_remoting.htm或者如果您要返回 html - 我认为您应该有{escape:true}
  4. 它发生在任何浏览器中吗?也许某些东西不喜欢由 URL 重写器引起的重定向。我见过一些案例(虽然不是 Salesforce),防病毒软件有时会在某些网站的末尾添加一些奇怪的 javascript,并且必须将它们列入白名单......
于 2013-04-09T18:09:17.643 回答
0

当页面从远程操作功能接收状态消息时,也可能由于解析器错误而发生错误。

例如,我尝试了带有附件的远程操作

@RemoteAction

public attachment attach(String body){
 attachment a=new attachment();
 a.body=body;
 a.name='a.png'

 insert a;

return a;

 }

在上面的代码中,我收到错误,因为 SFDC 不解析附件对象。所以如果有解析器错误,我们会收到此消息。

作为一种解决方法,我将其作为包装器发送。因此,我建议调查远程操作的返回参数并将其包装为解决方法。

希望这可以帮助

于 2013-04-10T02:32:04.063 回答