【发布时间】:2009-11-05 21:38:16
【问题描述】:
我正在使用BlazeDS java client 从this page 获取信息。 此页面中间有一个表单,当您选择类型时,按钮上的位置组合会更新。
我正在尝试使用 BlazeDS 在 java 中获取这些值。 我一直在用Charles web proxy调试,这是the request和the response的截图:
到目前为止,我的代码如下:
// Create the AMF connection.
AMFConnection amfConnection = new AMFConnection();
// Connect to the remote url.
String url = "http://orlandoinfo.com/flex2gateway/";
try
{
amfConnection.connect(url);
}
catch (ClientStatusException cse)
{
System.out.println(cse);
return;
}
// Make a remoting call and retrieve the result.
try
{
// amfConnection.registerAlias("flex.messaging.io.ArrayCollection", "flex.messaging.io.ArrayCollection");
amfConnection.call("ColdFusion.getLocations", new Object[] {"consumer", "attractions", "ATTR"});
}
catch (ClientStatusException cse)
{
System.out.println(cse);
}
catch (ServerStatusException sse)
{
System.out.println(sse);
}
// Close the connection.
amfConnection.close();
当我运行它时,我得到一个:
ServerStatusException
data: ASObject(15401342){message=Unable to find source to invoke, rootCause=null, details=null, code=Server.Processing}
HttpResponseInfo: HttpResponseInfo
code: 200
message: OK
谁能发现问题所在?
感谢阅读!
【问题讨论】:
-
这是客户端错误消息,是吗?你能从服务器端日志中发布任何有趣的东西吗?
-
我无法访问服务器。网络不是我的。
-
如果您无权访问服务器,是否意味着您没有权限进行此操作? 这个问题现在对我来说就像非法逆向工程。邪恶。
-
@Stu:我检查了 robots.txt,我不认为这是不允许的。也许我没有这样做的权限,但我认为复制 AMF 参数就像复制 HTTP POST。 (我删除了我的最后一条评论,因为当我重新阅读它时,它听起来很冒犯。)
-
检查 ToC。就是这样的东西所在的地方。如果您不确定,请写下它们。并检查
crossdomain.xml。你的网站在里面吗?坦率地说,你的比喻HTTP POST并不成立。如果用户永远不会到达那里,那么在 orlandoinfo.com 中拥有自己的带有 HTTP POST 的网站是不明智的。它与链接不同。如果您没有查询 API 的权限,那么您基本上是在窃取其他人的内容。如果你的案子是合法的,我会继续提供帮助......但在这一点上听起来真的很狡猾。