camel中http代理的全局配置
Global configuration of http proxy in camel
到目前为止,我已经学会了使用 camel 设置 HTTP 代理的方法。
第一个是用目标 URI 附加代理信息
<to uri="http://sample.com?proxyAuthHost=proxy.example.com&proxyPort=8080"/>
其他方法是将代理全局设置为 CamelContext
<properties>
<property key="http.proxyHost" value="proxy.example.com"/>
<property key="http.proxyPort" value="8080"/>
</properties>
除了这些方法之外,还有什么方法可以全局配置代理,这样我就不必为每个 URI
或每个 CamelContext
重复此过程?例如,如果我在属性文件中配置代理,我该如何使用它(除了使用 属性 使用 {{key}}
方法)?
您可以将 http 代理设置配置为 JVM 参数。关于此还有其他 SO 问题,例如:How do I set the proxy to be used by the JVM
您应该编辑 Karaf 的 setenv 文件,该文件位于 JBoss Fuse 安装下的 bin/
文件夹中。在该文件中,将 Claus 的回答链接的属性添加到 EXTRA_JAVA_OPTS 变量。
在 Linux 编辑 bin/setenv
EXTRA_JAVA_OPTS="-Dhttp.proxyHost=10.0.0.100 -Dhttp.proxyPort=8800"
export EXTRA_JAVA_OPTS
在 Windows 编辑 bin/setenv.bat
SET EXTRA_JAVA_OPTS=-Dhttp.proxyHost=10.0.0.100 -Dhttp.proxyPort=8800
然后启动 JBoss Fuse,这些选项将通过 bin/fuse
脚本添加到 Java 命令行。
bin/fuse
脚本调用 bin/karaf
从 bin/setenv
.
导入此类变量
到目前为止,我已经学会了使用 camel 设置 HTTP 代理的方法。
第一个是用目标 URI 附加代理信息
<to uri="http://sample.com?proxyAuthHost=proxy.example.com&proxyPort=8080"/>
其他方法是将代理全局设置为
CamelContext
<properties> <property key="http.proxyHost" value="proxy.example.com"/> <property key="http.proxyPort" value="8080"/> </properties>
除了这些方法之外,还有什么方法可以全局配置代理,这样我就不必为每个
URI
或每个CamelContext
重复此过程?例如,如果我在属性文件中配置代理,我该如何使用它(除了使用 属性 使用{{key}}
方法)?
您可以将 http 代理设置配置为 JVM 参数。关于此还有其他 SO 问题,例如:How do I set the proxy to be used by the JVM
您应该编辑 Karaf 的 setenv 文件,该文件位于 JBoss Fuse 安装下的 bin/
文件夹中。在该文件中,将 Claus 的回答链接的属性添加到 EXTRA_JAVA_OPTS 变量。
在 Linux 编辑 bin/setenv
EXTRA_JAVA_OPTS="-Dhttp.proxyHost=10.0.0.100 -Dhttp.proxyPort=8800"
export EXTRA_JAVA_OPTS
在 Windows 编辑 bin/setenv.bat
SET EXTRA_JAVA_OPTS=-Dhttp.proxyHost=10.0.0.100 -Dhttp.proxyPort=8800
然后启动 JBoss Fuse,这些选项将通过 bin/fuse
脚本添加到 Java 命令行。
bin/fuse
脚本调用 bin/karaf
从 bin/setenv
.