1

enix12enix 编写了一个独立的 sikuli 服务器来远程启动 sikuli 脚本。我正在运行服务器,现在我正在尝试将值与 url 一起传递。我想它看起来像这样:

http://server:9000/test.do?script=/yourscript&argv[1]=arg1value

& 之前的所有内容都可以正常工作。我知道答案在此处找到的 java 中的某处:

https://github.com/enix12enix/sikuliserver/blob/master/java/src/org/sikuli/SikuliScriptParamProcessor.java

因为有一个名为 extractparameters 的函数。任何人都可以帮助找出 url 的语法吗?

非常感谢,

雅各布

4

2 回答 2

1

根据用于检查参数名称是否正确的模式,您应该使用以下格式发送参数:argv## (1-99). 因此,argv[1]您应该发送 url而不是发送argv1.

于 2013-01-20T02:23:24.140 回答
1

谢谢 Jair,我也想出了如何在 Sikuli 脚本中引用它。我想那些熟悉 Java / Python / Jython 的人已经意识到了这一点,但我只是一个设置远程 Sikuli 服务器的菜鸟。

参数可以通过url传递如下:

http://server:9000/test.do?script=/yourScriptName.sikuli&argv1=value1&argv2=value2

依此类推,通过 argv99。

通常,在从命令行 (--args value1 value2) 运行脚本时,您会像这样引用 Sikuli 脚本中的参数:

import sys
var1 = sys.argv[1]
var2 = sys.argv[2]

在使用 Java 方面时,参考有点不同:

import java
var1 = java.lang.System.getProperty('argv1')
var2 = java.lang.System.getProperty('argv2')

等等。

于 2013-01-20T18:30:07.680 回答