Java 在AdobeAIR应用程序中创建API调用
我刚刚开始使用AdobeAIR应用程序。我做了一些hello worlds,对于桌面应用程序来说,AIR似乎很酷。我的下一个目标是通过api连接到我的AdobeAIR桌面应用程序 我想在AdobeAIR应用程序中启动一个restful服务,通过它我将指导air应用程序做什么。 我们如何才能做到这一点?正在进行套接字连接,但似乎存在多线程问题。AdobeAIR应用程序的ServerSocket是否能够处理多个请求 是否有任何选项可以将我的java webapp连接到adobe air应用程序中,并且它们可以交互 请帮帮我 编辑: 我在网上搜索,发现了类似的东西 就像一个新手一样,让activemq运行,我(webapp)将消息发布到activemq,让我的flex客户机作为消费者接收相应主题的消息,然后按照我的意愿进行操作,这是否很好? 那好吗? 我这里有东西 请更新 谢谢Java 在AdobeAIR应用程序中创建API调用,java,actionscript-3,apache-flex,air,flash-builder,Java,Actionscript 3,Apache Flex,Air,Flash Builder,我刚刚开始使用AdobeAIR应用程序。我做了一些hello worlds,对于桌面应用程序来说,AIR似乎很酷。我的下一个目标是通过api连接到我的AdobeAIR桌面应用程序 我想在AdobeAIR应用程序中启动一个restful服务,通过它我将指导air应用程序做什么。 我们如何才能做到这一点?正在进行套接字连接,但似乎存在多线程问题。AdobeAIR应用程序的ServerSocket是否能够处理多个请求 是否有任何选项可以将我的java webapp连接到adobe air应用程序中,并
Arvind是Javascript,因此可以使用
XmlHTTPRequest
发出请求
我已经从旧的生产代码中删除了这个代码,您可能需要在这里或那里更改一行代码。
原始代码如下:
旁注:大约五到六年前,我在AdobeAIR上有过一段糟糕的经历。它速度慢,容易出错,文档记录糟糕,不太灵活,在桌面上运行时感觉“陌生”。看来变化不大。我强烈建议你在谷歌上搜索其他选择,不要轻率地选择 Air是Javascript,因此可以使用
XmlHTTPRequest
发出请求
我已经从旧的生产代码中删除了这个代码,您可能需要在这里或那里更改一行代码。
原始代码如下:
旁注:大约五到六年前,我在AdobeAIR上有过一段糟糕的经历。它速度慢,容易出错,文档记录糟糕,不太灵活,在桌面上运行时感觉“陌生”。看来变化不大。我强烈建议你在谷歌上搜索其他选择,不要轻率地选择 你绝对可以做到这一点。一种选择是如您所说使用
ServerSocket
。另一个选择是简单地将Java web应用程序嵌入AIR包中。有一个例子详细介绍了如何使用Tomcat实现这一点,但基本原理很简单
你绝对可以做到。一种选择是如您所说使用
ServerSocket
。另一个选择是简单地将Java web应用程序嵌入AIR包中。有一个例子详细介绍了如何使用Tomcat实现这一点,但基本原理很简单
空气不是Javascript。有一种方法可以使用HTML/Javascript或Actionscript构建AIR应用程序,但更典型的方法是Actionscript.AIR允许使用Javascript。actionscript和javascript基本相同。这个问题没有提到actionscript(除了在标签中,不确定在我回答后是否更改了)。该代码已用于生产和工程中。那个么,否决票是怎么回事?这样一个未经教育的回答。@我想提供一些细节吗?AIR不是Javascript。有一种方法可以使用HTML/Javascript或Actionscript构建AIR应用程序,但更典型的方法是Actionscript.AIR允许使用Javascript。actionscript和javascript基本相同。这个问题没有提到actionscript(除了在标签中,不确定在我回答后是否更改了)。该代码已用于生产和工程中。那么,反对票是怎么回事?这样一个没有受过教育的回答。@我想提供一些细节吗?谢谢!我正在复习教程。如果我理解正确的话,这个示例将让tomcat webapp与flex应用程序通信并命令它执行操作。在我的第一个工作中,我想从两个单独的请求中调用两个摄像头。我将完成作业,看看它是否能帮助我,然后将这个好答案标记为已接受:D:)像ActiveMq这样的消息队列?最简单的是,我决定在AIR应用程序中运行计时器,它将调用我的API,并查看是否要执行任何操作。干杯谢谢我正在复习教程。如果我理解正确的话,这个示例将让tomcat webapp与flex应用程序通信并命令它执行操作。在我的第一个工作中,我想从两个单独的请求中调用两个摄像头。我将完成作业,看看它是否能帮助我,然后将这个好答案标记为已接受:D:)像ActiveMq这样的消息队列?最简单的是,我决定在AIR应用程序中运行计时器,它将调用我的API,并查看是否要执行任何操作。干杯
/**
* Make a call to a web service
*
* @param command The name of the command
* @param parameters A map of parameters, e.g. { "file": "/myfile.pdf" }
* @param (optional) callback, a function with one parameter, that will be given a json object when the result is ready.
*/
function callWebservice( url, parameters, callback ){
var async = (typeof (callback) == "function");
if( !parameters )
parameters = {};
var paramString = "";
for( var param in parameters ){
paramString += encodeURI( param ) + "=" + encodeURI( parameters[param] ) + "&";
}
var req = new XMLHttpRequest();
req.open( "POST", url, async );
req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
req.setRequestHeader("Content-length", paramString.length);
req.setRequestHeader("Connection", "close");
if( async ){
req.onreadystatechange = function(){
if( req.readystate == 4 && callback ) {
if( req.status == 200 ){
callback( JSON.parse( req.responseText ) );
}
else{
callback( { "error" : req.responseText } );
}
}
};
req.send( paramString );
}
else{
req.send( paramString );
var ret = JSON.parse( req.responseText );
return ret;
}
}